智力题

来源:互联网 发布:洪恩软件开天辟地7 编辑:程序博客网 时间:2024/06/04 20:10

一根金条长31厘米,如果把它切成数段,使其中的一段或几段能够接成长为1到31中任何整数的金条,请问要切几次?
1 = 00001
2 = 00010
4 = 00100
8 = 01000
16 = 10000
31 = 11111
哪一位上需要1,就加哪个数。
第一刀切下一个1,剩下31-1=30
第二刀切下一个2,剩下30-2=28
第三刀切下一个4,剩下28-4=24
第四刀切下一个8,剩下24-8=16
所以16就有了。不需要切第5刀了。

0 0
原创粉丝点击