N阶楼梯上楼问题:一次可以走两阶或一阶,问有多少种上楼方式。
可理解为斐波那契数列问题
递归解决:对于第N阶楼梯,可以从N-1层上来,也可从N-2层上来;
若走到第N-1层需要F(N-1)次,N-2层需要F(N-2)次,辣么走到N层就需要F(N-1)+F(N-2)次。
#include<stdio.h>
int TaiJie(int n){
if (n == 1)
{
return 1;
}
else if (n == 2){
return 2;
}
else{
return TaiJie(n - 1) + TaiJie(n - 2);
}
}
int main(){
int n, y;
scanf("%d", &n);
y = TaiJie(n);
printf("%d", y);
}