题解 | 爬楼梯
爬楼梯
https://www.nowcoder.com/practice/ce40d8c283d54ced8d2b28f7ea738083
/*#include <stdio.h>
long long fun(int n){
if(n>2) return fun(n-2)+fun(n-1);
if(n==2) return 2;
if(n==1) return 1;
return 0 ;
}
int main() {
int n;
scanf("%d",&n);
printf("%lld",fun(n));
// int a, b;
// while (scanf("%d %d", &a, &b) != EOF) { // 注意 while 处理多个 case
// 64 位输出请用 printf("%lld") to
// printf("%d\n", a + b);
// }
return 0;
} */
#include <stdio.h>
int main(){
int n,a=1,b=2;
long long sum=2;
scanf("%d",&n);
if(n==1)printf("%d",a);
if(n==2)printf("%d",b);
long long c[n];
for(int i=0;i<n;i++){
c[i]=0;
}
c[0]=1;c[1]=2;int m=0;
for(int i=2;i<n;i++){
c[i-1]=sum; sum+=c[i-2];
}if(n>2)printf("%lld",sum);
}

