题目描述
On the Day of the Flag of Russia a shop-owner decided to decorate the show-window of his shop with textile stripes of white, blue and red colors. He wants to satisfy the following conditions:
1. Stripes of the same color cannot be placed next to each other.
2. A blue stripe must always be placed between a white and a red or between a red and a white one.
Determine the number of the ways to fulfill his wish.
Example. For N = 3 result is following:
输入
N, the number of the stripes, 1 ≤ N ≤ 45.
输出
M, the number of the ways to decorate the shop-window.
示例输入
3
示例输出
4
#include<stdio.h> int main() { int n; long long a[46]; a[1] = 2; a[2] = 2; a[3] = 4; while(~scanf("%d",&n)) { for(int i = 4;i <= n;i++) a[i] = a[i-1]+a[i-2]; printf("%lld\n",a[n]); } return 0; }