西西河

主题:【原创】由一个简单的面试题想起的 -- 东方射日

共:💬43 🌺18 新:
全看分页树展 · 主题 跟帖
家园 想了一下,这个问题可能可以用动态规划

假设F(N,P)代表用P个包裹在最佳方案下的平均测试数

则显然

F(N,1)=(1+2+...+N)/N=(N+1)/2

如果包裹数大于层数则

F(N,P)=F(N,N)

F(2,2)=2

P大于1时

假设第一次包裹放在L层

F(N,P)=L/N*F(L-1,P-1)+F(N-L,P)*(N-L)/N

第一项代表第一次试验摔坏的情况,第二项代表未摔坏的情况

显然选取L使得上式最小时为最优

这样P=2时可以递归计算出最优解

全看分页树展 · 主题 跟帖


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河