Wyobraź sobie prostą rzekę i drogę, która biegnie przez rzekę n razy przez mosty. Droga nie zapętla się i jest nieskończenie długa. Ta droga byłaby uważana za otwarty zakręt. Otwarty meander jest otwartą krzywą, że nie przecinają się i rozciąga się bezstopniowo siebie na obu końcach, który przecina linię n razy.
Prawidłowego meandra można opisać całkowicie według kolejności punktów przecięcia, które odwiedza.
Liczba różnych wzorów przecięcia z n przecięciami, którymi może być meander, jest n-tą liczbą meandryczną . Na przykład n = 4:
Pierwsze kilka liczb tej sekwencji to:
1, 1, 1, 2, 3, 8, 14, 42, 81, 262, 538, 1828, 3926, 13820, 30694, 110954...
Jest to sekwencja OEIS A005316 .
Wyzwanie
Napisz program / funkcję, która przyjmuje na wejściu dodatnią liczbę całkowitą n i wypisuje n-tą liczbę meandryczną .
Dane techniczne
- Obowiązują standardowe zasady we / wy .
- Standardowe luki są zabronione .
- Twoje rozwiązanie może mieć indeks 0 lub indeks 1, ale określ, które z nich.
- Wyzwanie to nie polega na znalezieniu najkrótszego podejścia we wszystkich językach, chodzi raczej o znalezienie najkrótszego podejścia w każdym języku .
- Twój kod będzie oceniany w bajtach , zwykle w kodowaniu UTF-8, chyba że określono inaczej.
- Wbudowane funkcje, które obliczają tę sekwencję są dozwolone, ale zalecane jest rozwiązanie, które nie opiera się na wbudowanej.
- Zachęca się do wyjaśnień, nawet w przypadku „praktycznych” języków .
Przypadki testowe
Są one indeksowane na 0. Pamiętaj, że nie musisz obsługiwać tak dużych cyfr, jeśli Twój język domyślnie nie może.
Input Output
1 1
2 1
11 1828
14 30694
21 73424650
24 1649008456
31 5969806669034
W kilku lepszych formatach:
1 2 11 14 21 24 31
1, 2, 11, 14, 21, 24, 31
ᖘ
aby liczby meandryczne były większe.)