Hallo!
Ich weiß nicht, ob du es warst, der dieses Thema hier vor ein paar Wochen angeschnitten
hat, aber es interessierte mich auch.
Ich habe daraufhin ein altes Java-Programm genommen, daß die Lösung für drei Stangen
anzeigt und es erlaubt die Türme vom User umzubauen und dieses erweitert.
Da ich nunmal mathematisch angehaucht bin (
) habe ich das Programm gleich auf
N-Stangen zum
Selbstbewegen erweitert. Nachdem ich ein bischen herumgespielt habe
und mir eine gewisse Systematik aufgefallen ist, habe ich einen Backtracking-Algorithmus
ermittelt der den Rechner minimale Lösungen für jede Anzahl von Stangen finden läßt.
Nachdem sich herausgestellt hatte, daß der Aufwand, bei Erhöhung der Stangenanzahl,
exponentiell anwächst (hätte ich mir ja denken können
), mußte ich noch eine
Unmenge an Baumbeschneidungen einbauen.
Wenn du willst, kann ich dir das Programm ja mal schicken; Zum Studium des Verhaltens
bei allgemeiner Anzahl von Stangen ist es sehr hilfreich (Du kannst auswählen, ob
du die Lösungsfindung mitverfolgen willst; mit einem Slider die Darstellungsgeschwindigkeit
wählen, oder die Berechnung ohne Anzeige laufen lassen und dann, Schritt für Schritt,
den Umbau beobachten).
Aber ein Hinweis:
[schild=5 fontcolor=000000 shadowcolor=C0C0C0 shieldshadow=1]Schau ja nicht zu tief in den Quelltext![/schild]
Dieses Programm entspricht nun absolut nicht meinem sonstigen Programmierstil,
aber, da es ja nur für mich ist, war mir Geschwindigkeit wichtiger als Erkenntnisse
aus Jahrzehnten Softwareengineering.