У мого вчителя Precalc є одна з його улюблених проблем, яку він склав (або, швидше за все, викрав натхненний xkcd ), що включає ряд nпісуарів. "Контрольний мат" - це ситуація, при якій кожен пісуар вже зайнятий АБО має зайнятий пісуар поруч. Наприклад, якщо людина є X, то
X-X--X
вважається мат. Зауважте, що людина не може зайняти пісуар поруч із вже зайнятим пісуаром.
Завдання
Ваша програма буде приймати число stdin, аргументи командного рядка або аргумент функції. Потім ваша програма роздруковує або повертає кількість способів, за якими може відбуватися реєстрація, із введеною кількістю піссуарів.
Приклади
0 -> 1(Відліки нульовий випадок як мат)
1 -> 1( X)
2 -> 2( X-або -X)
3 -> 2( X-Xабо -X-)
4 -> 3( X-X-, -X-Xабо X--X)
5 -> 4( X-X-X, X--X-, -X-X-, або -X--X)
6 -> 5( X-X-X-, X--X-X, X-X--X, -X--X-або -X-X-X)
7 -> 7( X-X-X-X, X--X-X-, -X-X--X, -X--X-X, X-X--X-, X--X--Xабо -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-)
...
Оцінка балів
Виграє найменша програма в байтах.
''. Це те саме, що і з факторіалами та перестановками, 0! = 1, оскільки існує рівно один спосіб впорядкувати 0 предметів.