WxH
Wie viele mögliche Labyrinthe gibt es in einem vorgegebenen Raster?
Dinge, die Sie über das Labyrinth wissen:
- Das Raster ist genau
H
quadrathoch undW
quadratweit. - Es gibt drei Arten von Quadraten: Start, Ziel und Leer. Ihr Labyrinth muss genau 1 Start und 1 Ziel enthalten, und alle verbleibenden Felder sind leer.
- Das gesamte Labyrinth ist von Mauern umgeben.
- Wände können an der Kante zwischen zwei beliebigen Feldern vorhanden sein, es sei denn, dies verstößt gegen die folgende Regel:
- Es muss einen Pfad vom Startfeld zum Zielfeld geben.
Aus diesem Grund müssen Sie bei zwei gegebenen Zahlen W
und H
eine einzelne Zahl zurückgeben, die die Anzahl der möglichen Quadrat- / Wandkonfigurationen darstellt. Das ist Ihnen garantiertW*H > 1
Zum Beispiel hat das 2x2
Labyrinth genau 100
verschiedene mögliche Konfigurationen.
Dies ist ein Code-Golf, also gewinnt die kürzeste Antwort!
code-golf
maze
code-golf
string
whitespace
code-golf
arithmetic
code-golf
pyth
code-golf
game
code-golf
string
code-challenge
code-challenge
ascii-art
compression
king-of-the-hill
c
c++
java
code-challenge
math
optimization
code-challenge
math
code-golf
kolmogorov-complexity
code-golf
string
Nathan Merrill
quelle
quelle
Antworten:
Python 2,
329310 BytesDies ist die Golf-Version (und viel ineffizienter) des Programms, das ich verwendet habe, als ich das Problem mit @ Nathan besprochen habe. Ich kann ein paar Bytes sparen, indem ich einige Leerzeichen durch Tabulatoren ersetze, aber ich werde das für später speichern.
Der Algorithmus generiert einfach jedes Labyrinth und füllt es dann von Anfang an, um zu sehen, ob wir irgendwann das Ziel erreichen oder nicht.
quelle