#include <stdio.h>
int main()
{
int dp[40][2];
dp[1][0] = 1;
dp[1][1] = 2;
int i;
for(i=2;i<40;i++)
{
dp[i][0] = dp[i-1][1];
dp[i][1] = (dp[i-1][1] + dp[i-1][0]) * 2 ;
}
int n;
while(~scanf("%d",&n))
{
if(n==1)
{
printf("3\n");
continue;
}
printf("%d\n",dp[n][0]+dp[n][1]);
}
return 0;
}
说明:
1.这样会超出范围,改成long long
2. __int64
printf("%I64d",...)