题目描述:
斐波那契研究的兔子是每隔两个月开始成熟,现在我们要求的是每隔m个月的情况。
输入:程序从标准输入读入数据,每行数据由两个整数 m (1=<m<=10)和d(1=<d<=100) 组成,其中m是每隔m个月开始成熟,d是d个月后围栏中的兔子对数。m和d之间有一个空格。当m和d均为 0 时程序结束。注意本题我们假设从一对大兔开始。
输出:针对每一行输入,输出一个结果,每个结果占一行。
测试输入:
2 3
3 5
0 0
测试输出:
5
9
源码:
#include<stdio.h>
int main(){
double c[103];
int m,d;
int i;
while(1){
scanf("%d%d",&m,&d);
if(m == d && m == 0) break;
if(d <= m) c[d] = 1 + d;
else{
c[0] = 1;
for(i=1;i<m+1;i++) c[i] = i + 1;
for(i=m+1;i<=d;i++){
c[i] = c[i-1] + c[i-m];
}
}
printf("%.0f\n",c[d]);
}
return 0;
}
责任编辑:小草