Stellen Sie sich einen geraden Fluss und eine Straße vor, die n- mal durch Brücken über den Fluss führt . Die Straße führt nicht auf sich selbst und ist unendlich lang. Diese Straße würde als offener Mäander angesehen werden. Ein offener Mäander ist eine offene Kurve, die sich nicht selbst schneidet und sich an beiden Enden unendlich erstreckt und eine Linie n- mal schneidet .
Ein gültiger Mäander kann vollständig durch die Reihenfolge der Kreuzungspunkte beschrieben werden, die er besucht.
Die Anzahl der unterschiedlichen Schnittmuster mit n Schnittpunkten, die ein Mäander sein kann, ist die n-te Mäanderzahl . Zum Beispiel ist n = 4:
Die ersten Zahlen dieser Sequenz sind:
1, 1, 1, 2, 3, 8, 14, 42, 81, 262, 538, 1828, 3926, 13820, 30694, 110954...
Dies ist die OEIS-Sequenz A005316 .
Herausforderung
Schreiben Sie ein Programm / eine Funktion , die eine positive ganze Zahl n als Eingabe verwendet und die n-te Mäanderzahl ausgibt .
Spezifikationen
- Es gelten die Standard-E / A-Regeln .
- Standardlücken sind verboten .
- Ihre Lösung kann entweder 0-indiziert oder 1-indiziert sein. Bitte geben Sie an, welche.
- Bei dieser Herausforderung geht es nicht darum, den kürzesten Ansatz in allen Sprachen zu finden, sondern darum, den kürzesten Ansatz in jeder Sprache zu finden .
- Ihr Code wird in Bytes bewertet , normalerweise in der Codierung UTF-8, sofern nicht anders angegeben.
- Eingebaute Funktionen, die diese Sequenz berechnen, sind zulässig jedoch empfohlen, eine Lösung zu verwenden, die nicht auf einer eingebauten basiert.
- Erklärungen, auch für "praktische" Sprachen, sind erwünscht .
Testfälle
Diese sind 0-indiziert. Beachten Sie, dass Sie keine so großen Zahlen verarbeiten müssen, wenn Ihre Sprache standardmäßig nicht unterstützt wird.
Input Output
1 1
2 1
11 1828
14 30694
21 73424650
24 1649008456
31 5969806669034
In ein paar besseren Formaten:
1 2 11 14 21 24 31
1, 2, 11, 14, 21, 24, 31
ᖘ
so aussehen, dass die Mäanderzahlen größer sind.)