Mój nauczyciel Precalc ma jeden ze swoich ulubionych problemów, które wymyślił (lub bardziej prawdopodobne, że ukradł zainspirowany xkcd ), który dotyczy szeregu n
pisuarów. „Szach-mat” to sytuacja, w której każdy pisuar jest już zajęty LUB ma obok niego zajęty pisuar. Na przykład, jeśli dana osoba jest X
, to
X-X--X
jest uważany za mat. Pamiętaj, że osoba nie może zajmować pisuaru obok już zajętego pisuaru.
Zadanie
Twój program przyjmie liczbę stdin
, argumenty wiersza poleceń lub argument funkcji. Twój program wydrukuje następnie lub zwróci liczbę sposobów, w jakie może wystąpić mat z wprowadzoną liczbą pisuarów.
Przykłady
0 -> 1
(zero przypadku liczona jako mata)
1 -> 1
( X
)
2 -> 2
( X-
i -X
)
3 -> 2
( X-X
i -X-
)
4 -> 3
( X-X-
, -X-X
, a X--X
)
5 -> 4
( X-X-X
, X--X-
, -X-X-
, a -X--X
)
6 -> 5
( X-X-X-
, X--X-X
, X-X--X
, -X--X-
i -X-X-X
)
7 -> 7
( X-X-X-X
, X--X-X-
, -X-X--X
, -X--X-X
, X-X--X-
, X--X--X
i -X-X-X-
)
8 -> 9
( -X--X--X
, -X--X-X-
, -X-X--X-
, -X-X-X-X
, X--X--X-
, X--X-X-X
, X-X--X-X
, X-X-X--X
, X-X-X-X-
)
...
Punktacja
Najmniejszy program w bajtach wygrywa.
''
. Jest to to samo, co dla silni i permutacji, 0! = 1, ponieważ jest dokładnie 1 sposób na zorganizowanie 0 przedmiotów.