#include<stdio.h>
int Fib(int n){
if(n<=2)
return 1;
else
return Fib(n-1)+Fib(n-2);
}
int Fib2(int n){
int a=1;
int b=1;
int c=1;
while(n>2)//从第三个进行交换
{
c=a+b;//这个计算比较快一点
a=b;
b=c;
}
return c;//当n小于2时直接返回会该值
}
int main(){
int n=0;
scanf("%d",&n);
int ret=Fib1(n);
int ret=Fib1(n);
printf("%d\n",ret)
return 0;
}//但是如果用递归的话比较麻烦因为有很多重复的计算所以可能导致内存溢出而且计算时间比较长