利用函数迭代算法得出结果。
#include <stdio.h>
#include <stdlib.h>
int findn(int M){
int n,f1=1,f2=1,fn,s=1;
for(n=1;;n++){
fn=f1+2*f2;
f1=f2,f2=fn;
s+=f1;
if(s>=M) break;
}
return n;
}
int main(){
printf("%d\n%d\n%d\n",findn(100),findn(1000),findn(10000));
return 0;
}