N阶楼梯上楼问题:一次可以走一阶或者两阶,问有多少种上楼方式。
因为只可能从n-1阶和n-2阶走到n阶,因此走到n阶的方式数量=走到n-1阶的方式数量+走到n-2阶的方式的数量。
也就是F[n]=F[n-1]+F[n-2],也就是斐波那契数列。
#include<stdio.h>
long long F[51];
int main()
{
F[1] = 1;
F[2] = 2;
for (int i = 3; i <= 50; i++)
F[i] = F[i - 1] + F[i - 2];
int n;
while (scanf("%d", &n) != EOF)
printf("%d\n", F[n]);
return 0;
}