n为整数时,n的解为 n/2 的解加1 n为奇数时,n的解为 (n+1)/2 和 (n-1)/2 的解中较小的解加2 通过这个思路,我们可以自底向上依次计算出n的解,代码如下 publicstaticintgetNum(intn) {if(n<1) {return0; }int[] res =newint[n+1]; res[0] = 0; res[1] = 0;for(inti=2;i<=n...
输入一个数字n,如果n为偶数则除以2,若为奇数则加1或者减1,直到n为1,求最少次数,写出一个函数。 初次看到这个题的时候,觉得不是越快减完越好么??每次奇数都减去1不就可以? 图样啊~ 仔细想想又不对,能除以2的时候是最爽的,而且最好能一直除下去。。那么问题来了,怎么样在遇到奇数的时候,判断我是要加1...