У моего учителя в 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, потому что есть ровно 1 способ расставить 0 предметов.