智力题解题报告NO.5 金条发工资

来源:互联网 发布:淘宝找人代付 编辑:程序博客网 时间:2024/04/28 07:13

 

1根金条均分成连续的15份 付给做了15天工的工人,工钱一日一结算,每天给1/15。

 

一开始容易陷入1变2变4变8的困境。

 

但这里比较容易想到的是我今天先给你一点,然后明天你把我昨天的给我,我再给你多点。15 = 8+7; 7=4+3;3=2+1;这样分3次,分成8,4,2,1很容易实现这种需求。

 

那具体怎么做呢?这里可以简单地看到15=16-1,二进制 1111

 

分成8,4,2,1即是 1000,100,10,1

 

这四个数组合起来,从高到低的4位都即可以为0,也可以为1,则可以表示0000-1111间的任何一个数。

 

 

即:共15块,某一天,工人拿到了N块(任意一个0-15的数),我这里就还剩15-N块。我用8,4,2,1表示出N,然后拿给他。其他的归我即可。这样即满足了每天都发一块工资的需求。

 

原创粉丝点击