题目链接
http://acm.hdu.edu.cn/showproblem.php?pid=2047
倒数一位可能为 E F O
最后一个可以是E或者F 那么组数就是2*f(n-1)
如果最后一个是O,那么就要倒数第二个是E或者F才符合,所以是2*f(n-2)
#include<bits/stdc++.h>
using namespace std;
long long a[40];
int main (void)
{
int n;
a[0]=1;
a[1]=3;
for(int i=2;i<40;i++)
{
a[i]=a[i-1]*2+a[i-2]*2;
}
while (scanf("%d",&n)!=EOF)
{
printf("%lld\n",a[n]);
}
return 0;
}