[百度面试题]100层楼,球可能会在某一层楼摔坏,问用2个球,最坏情况下几次测试可以找出该楼层
该题还可以扩展,比如说给更多的球,如3个球,多少次测试可以找出楼层。
分析如下:
用动态规划解这个问题
设f(a, b)为a个球做b次测试可以测试到的楼层数,可以确定的楼层数即为f(a, b) + 1,因为第1层不需测试,需要测试的楼层号仅仅为[2, f(a, b) + 1]共f(a, b)层,也就是a个球b次测试可以测试到的楼层数。考虑第1次测试,测试的楼层记为x:
1)如果球破了,就需
转载
2017-08-26 16:01:19 ·
11204 阅读 ·
2 评论