玻璃球
玻璃球摔碎的最低楼层¶
2个玻璃球和100层高的大厦,玻璃球摔碎的最低楼层。
最优间隔法¶
每隔10层向上尝试
第一次10,第二次20,第三次30... 最后一次100层。
假如在70层摔碎了,那么第二个小球就从61到69逐层尝试。
小球1确定间隔,小球2确定最终的层数。
小球1和小球2要保持总的尝试次数不变,没有最坏的情况。
第一次:小球1在k
层摔碎了,小球2在1,2,3 ... k-1层尝试,共尝试1+k-1次。
第二次:小球1在(k)+k-1 = k+k-1
层尝试碎了,小球2在k+1,k+2,...k+k-2层尝试。小球1尝试2次,小球2尝试k-2次,共尝试k次。
第三次:小球1在(k+k-1)+k-2 = k+k+k-3
层尝试碎了,小球2在k+k,k+k+1,...,k+k+k-4层尝试。
小球1每次增加的楼层要减一,加上小球2尝试的次数,保持不超过k。
n层楼 至少尝试k次
k+(k-1)+(k-2)+...+2+1>=n;即1+2+3+...(k-2)+(k-1)+k>=n;即(k+1)*k/2>=100
k最小14.
第几瓶水有毒¶
有4个老鼠和15瓶水,判断哪瓶水有毒。
0001 第1瓶水
0010 第2瓶水
0011 第3瓶水
0100 第4瓶水
0101 第5瓶水
0110 第6瓶水
等等
1111 第15瓶水
4位二进制数 每位表示一个老鼠。