n 从 1 开始,每个操作可以选择对 n 加 1,或者对 n 加倍。如果最后结果为 2013,最少 需要()个操作。
A.18
B.24
C.21
D.不可能
正确答案是 A
解析:
将2013转换为二进制为:10111011111;其中,1要做2次操作(减1和 除以2 ), 0要做1次操作( 除以2 ) ,最左边的1做0次操作(初始为1)。设1数量为x,0数量为y,则num = 2*(x-1)+y。(除以2在二进制里是右移一位)
帖子还没人回复快来抢沙发
请写出以下代码执行输出:(构造函数、静态块执行顺序)
多线程中sleep()和wait()方法的区别
北京有一条1公里长的街道,你认为一天能收多少钱的停车费?
解释一下TCP的滑动窗口。
帖子还没人回复快来抢沙发