//纯数学题,先打表
#include
using namespace std;
int main()
{
int i,n,a[55];
a[1]=1;
a[2]=2;
a[3]=3;
for(i=4;i<55;i++)a[i]=a[i-3]+a[i-1];
while(cin>>n&&n!=0)
{
cout< }
}
简单的递归题,第i天的母牛中于第i-3天之前生出来的都会产一仔,故第i天的母牛数等于第i-1天的母牛数+会产仔的母牛数
故a[i]=a[i-1]+a[i-3]
#include
using namespace std;
int main()
{
int i,n;
int a[55]={1,2,3,4,6};
for(i=5;i<55;i++)
a[i]=a[i-1]+a[i-3];
while(cin>>n && n!=0)
cout< return 0;
}