循环-05. 兔子繁衍问题(15)
时间限制
400 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
徐镜春(浙江大学)
一对兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。假如兔子都不死,请问第1个月出生的一对兔子,至少需要繁衍到第几个月时兔子总数才可以达到N对?
输入格式:
输入在一行中给出一个不超过10000的正整数N。
输出格式:
在一行中输出兔子总数达到N最少需要的月数。
输入样例:30输出样例:
9
1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<math.h> 4 int IsPrime(int x); 5 int main() 6 { 7 int n; 8 scanf("%d", &n); 9 int a, b, sum, i; 10 a = b = 1; 11 sum = a + b; 12 i = 3; 13 if(n < 2) 14 i = 1; 15 else 16 { 17 while(sum < n) 18 { 19 a = b; 20 b = sum; 21 sum = a + b; 22 i++; 23 } 24 } 25 printf("%d ", i); 26 return 0; 27 }