如何在10个盒子中分发1000美元,以便在1美元到1000美元(包括两者)之间的任何金额可以作为这些盒子的某些组合给出。
请提供有关如何处理此问题的任何提示。我试过但无法解决问题。
答案 0 :(得分:3)
分配2的幂,然后分配你需要的任何数量,只需将其转换为二进制并选择那些位设置为1的框。
答案 1 :(得分:2)
以基数为二的表示法写出1到1000之间的所有数字。这些数字从2^10 = 1024
起需要十位。您的框最多为2^8
两个,489
为最后一个框(2^0
到2^8
,而489
为您提供十个框和{{1}并且位表示为您提供证据,证明您可以将任意数量写入1000作为这些框的组合(显然任何高达511的任何东西都可以,对于任何大于511的东西,减去489然后请注意您可以写其余为8个盒子的组合,因为它保证小于或等于511)。