http://acm.hdu.edu.cn/showproblem.php?pid=2085
这也是一个简单的的递推。
a[i][0] = 3*a[i-1][0]+2*a[i-1][1];
a[i][1] = a[i-1][0]+a[i-1][1];
#include <stdio.h>
int main()
{
__int64 a[35][2];
int i,j,k;
a[0][0] = 1;
a[0][1] = 0;
a[1][0] = 3;
a[1][1] = 1;
for (i = 2;i<=33;i++)
{
a[i][0] = 3*a[i-1][0]+2*a[i-1][1];
a[i][1] = a[i-1][0]+a[i-1][1];
}
while (scanf("%d",&j)!=EOF&&j!=-1)
printf("%I64d, %I64d\n",a[j][0],a[j][1]);
return 0;
}