问题描述:
有一栋100层高的大楼,给你两个完全相同的玻璃球。假设从某一层开始,丢下玻璃球会摔碎。那么怎么利用手中的两个球,用什么最优策略知道这个临界的层是第几层。
问题答案:
考虑best-worse case最坏情况下最优。也就是说假如你的算法是从第一楼逐楼往上试,那么相应最坏的情况是在100楼破,相应的是一百次。
这种情况下最优策略也就是从14楼开始递减间隔的办法,worst case 需要14次。
14 , 27(14 + 13) , 39(27 + 12) , 50(39 + 11) , 60(50 + 10) , 69(60 + 9) , 77(69 + 8) ,84(77 + 7) , 90(84 + 6) , 95(90 + 5)