Я пытался написать алгоритм для вычисления максимального количества или испытаний, требуемых в худшем случае, в проблеме сбрасывания яйца. Вот мой питон кодВыпадение яйца в худшем случае
def eggDrop(n,k):
eggFloor=[ [0 for i in range(k+1) ] ]* (n+1)
for i in range(1, n+1):
eggFloor[i][1] = 1
eggFloor[i][0] = 0
for j in range(1, k+1):
eggFloor[1][j] = j
for i in range (2, n+1):
for j in range (2, k+1):
eggFloor[i][j] = 'infinity'
for x in range (1, j + 1):
res = 1 + max(eggFloor[i-1][x-1], eggFloor[i][j-x])
if res < eggFloor[i][j]:
eggFloor[i][j] = res
return eggFloor[n][k]print eggDrop(2, 100)
`` `
код выводит значение 7 для 2eggs и 100floors, но ответ должен быть 14, я не знаю, что ошибка я сделал в код. В чем проблема?
Что такое «проблема с падением яйца»? – Cirdec
Возможный дубликат [Обобщенная головоломка с двумя яйцами] (http://stackoverflow.com/questions/10177389/generalized-two-egg-puzzle) –
См. Https://stackoverflow.com/questions/3974077 для лучшей экспозиции –