排成一排n个方格,用三种不同颜色填充,求所有满足的涂法
采用递归
f(n) = f(n-1) + 2 *f(n-2)
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
int n,i;
long long a[51]
a[1] = 3;
a[2] = 6;
a[3] = 6;
for(i=4;i<51;i++)
{
a[i] = 2*a[i-2]+a[i-1];
}
while(scanf("%d",&n) != EOF)
{
printf("%lld\n",a[n]);
}
return 0;
}