一道腾讯面试题(关于整数的二进制表示)

[问题]1023个苹果,有无数个箱子,怎样将这1023个苹果放到最少数量的箱子里,使我随意说出一个1024以内的数字,都能用箱子组合起来使得苹果数量等于那个数字。

[解析]每个箱子分别存放1,2,4,8,……,512个苹果。因为整数都能写成二进制形式,所以按照二进制到十进制的转化过程就能够写成2的幂次方相加的形式,所以按照这样放能够表示出所有数字,而且箱子最少。

原文地址:https://www.cnblogs.com/laifeiyao/p/3427522.html