一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?
1 /*
2 dp[i][1..4] 第i年时年龄为1234的牛的数目
3 */
4 #include <cstdio>
5 #include <cstring>
6 const int N = 66;
7 int dp[N][6];
8 int main(){
9 memset(dp,0,sizeof(dp));
10 dp[0][4] = dp[1][1] = dp[1][4] = 1;
11 for(int i=2;i<56;i++){
12 dp[i][1] = dp[i][4] = dp[i-1][3]+dp[i-1][4];
13 dp[i][2] = dp[i-1][1];
14 dp[i][3] = dp[i-1][2];
15 }
16 int n;
17 while(scanf("%d",&n)&&n){
18 printf("%d
",dp[n][2]+dp[n][3]+dp[n][4]);
19 }
20 return 0;
21 }