Anzahl der Pfade auf einem Gitter von S bis M

Ich habe hier über die Ableitung der Formel für die Anzahl der Pfade von einer Ecke zur anderen Ecke eines H x W-Rasters gelesen und mich gefragt, ob es möglich ist, das Ergebnis anzuwenden: ( ( H 1 ) ( W 1 ) H 1 ) um die Anzahl der Pfade von einem bestimmten Quadrat in der oberen Reihe des Gitters zu einem anderen ausgewählten Quadrat in der unteren Reihe zu finden.Geben Sie hier die Bildbeschreibung ein

Zum Beispiel die Anzahl der Pfade von B nach J. Ich dachte daran, das Raster auf die Spalten B bis D zu reduzieren, die Pfade dort zu zählen und dann die möglichen Pfade von jedem anderen Quadrat außerhalb des reduzierten Rasters hinzuzufügen. Allerdings hatte ich Mühe, eine Formel für die möglichen Pfade von außerhalb des reduzierten Gitters zu finden.

In einem Pfad kann man kein Quadrat wiederholen, und man kann sich zu jedem benachbarten Quadrat bewegen.

Welche Regeln gelten für den Weg, den Sie einschlagen können? Dürfen Sie die B- bis D-Region verlassen? Darf man so viel horizontal gehen wie man will? Ohne die Regeln gibt es keine Antwort.
Der Kommentar von @RossMillikan hat mich umgehauen; Klärung erforderlich. Ein Ansatz besteht darin, dies beim Ausgehen anzugeben B Zu D , du kannst dich niemals nach oben bewegen . Wie der Kommentar von Ross Millikan zeigt, ist dies jedoch immer noch unzureichend , da Sie endlos nach links und rechts gehen könnten .
@RossMillikan, ich habe aktualisiert, hoffentlich verdeutlicht es, Sie können die Region B bis D verlassen, aber Sie können das Gesamtraster nicht verlassen.
Es ist keine Formel bekannt, und es wird vermutet, dass das Problem rechenintensiv ist. Siehe math.stackexchange.com/questions/1022245/…

Antworten (2)

Ein möglicher (aber komplizierter) Ansatz

Sie könnten Bewegungen durch komplexe Zahlen darstellen:

1 bewegt sich nach rechts, 1 bewegt sich nach links, ich ist aufsteigen, ich bewegt sich nach unten.

Dann ist ein Pfad eine Sequenz wie z 1 , ich , 1 , . . .

Die Bedingungen für einen gültigen Pfad haben dann einfache arithmetische Äquivalenzen.

Um von B nach J zu wechseln Die Gesamtsumme der Zahlen muss sein 2 5 ich .

Im Raster bleiben Für jede natürliche Zahl N , die Summe S N des ersten N Zahlen müssen genügen 4 ( S N ) 1 , 0 ( S N ) 5.

Kein Feld zweimal besuchen Keine Summe aufeinanderfolgender Zahlen darf Summe haben 0 .

Dies scheint geeignet zu sein, programmiert zu werden, wenn dies von Interesse ist.

Beachten Sie in der Originalquelle, dass jeder Schritt im Pfad rechts oder unten war. Mit diesen Regeln erfordert jeder Weg von B nach J 2 Rechte und 5 Abstiege in beliebiger Reihenfolge. Es gibt ( 5 + 2 2 ) = 21 solche Wege. Aber um beispielsweise von B nach G zu gelangen, bräuchten Sie Bewegungen nach links und nach unten. Wenn Sie sowohl Links als auch Rechts zulassen, ist die Anzahl der Pfade unendlich, da Sie sich nach rechts, links, rechts, links bewegen können ... so lange Sie möchten.

Bearbeiten: Mit der Einschränkung, eine Position nicht mehr als einmal zu besuchen, ist die Anzahl der Pfade mit jeder zulässigen Richtung endlich, aber groß (im Vergleich zur Brettgröße). Zum Beispiel die Anzahl der Pfade zwischen gegenüberliegenden Ecken von a 2 × N Gitter ist 2 N 1 , schon exponentiell.