1. 程式人生 > >母牛生小牛

母牛生小牛

turn pre spa 含義 scan color 多個 實現 div

問題描述

有一頭母牛,它每年年初生一頭小母牛。每頭小母牛從第四個年頭開始,每年年初也生一頭小母牛。請編程實現在第n年的時候,共有多少頭母牛?

輸入格式輸入數據由多個測試實例組成,每個測試實例占一行,包括一個整數n(0<n<55),n的含義如題目中描述。
n=0表示輸入數據的結束,不做處理。
輸出格式對於每個測試實例,輸出在第n年的時候母牛的數量。
每個輸出占一行。
樣例輸入2
4
5
0
樣例輸出2
4
6

 
#include <stdio.h>  
#include <iostream>  
#include <string.h>   
using namespace
std; int main() { int n,i; int f[100]; f[1] = 1; f[2] = 2; f[3] = 3; f[4] = 4; int h = 4; scanf("%d",&n); while(n!=0) { if(n>h) { for(i=h+1;i<=n;i++) f[i] = f[i-4] + f[i-3] + f[i-2]; //核心 h = n; } printf(
"%d\n",f[n]); scanf("%d",&n); } return 0; }

母牛生小牛