Die folgende kurze Beschreibung des bekannten "Google Eggs Puzzle" stammt hauptsächlich von der Website Google Eggs :
Google Eggs Puzzle: Wie wird bei n Stockwerken und m Eiern der höchste Stock gefunden, aus dem Eier sicher geworfen werden können, während die Würfe minimiert werden (keine zerbrochenen Eier)?
Das sogenannte "höchste Stockwerk" im obigen Problem verdient eine formellere Definition:
„höchste“ muss einen Boden sein f (in jedem ausreichend hohen Gebäude) , so dass ein Ei aus dem fiel f th Boden bricht, aber man ging von dem ( f-1 ) st Boden nicht. Dann ist f-1 hier die höchste Etage.
Tatsächlich ist die Beschreibung von "am höchsten" ein Auszug aus dem Buch "The Algorithm Design Manual (Second Edition)" von Steven S. Skiena. Als Übung in Kapitel 8 "Dynamische Programmierung" gibt es im Web zahlreiche Ressourcen, die sich dem Lösen des Puzzles mithilfe dynamischer Programmierung widmen, z. B. Google Eggs und The Two Egg Problem .
Es gibt jedoch eine Frage aus dem obigen Buch:
Zeigen Sie, dass , wobei die Mindestanzahl von Würfen ist. (Hinweis: Ich habe die im Buch verwendeten Notationen aus Gründen der Konsistenz geändert.)E(⋅)
Es ist die Frage, die mein Problem motiviert:
Mein Problem: Gibt es eine mathematisch geschlossene Form für das allgemeine "Google Eggs Puzzle" mit n Stockwerken und m Eiern anstelle einer dynamischen Programmierwiederholung und natürlich enger als das eins?