問題:小明走樓梯,一次可以走一階或者兩階, 請問他走n階樓梯時有幾種方法?
解題思路:上N階樓梯的方法是上N-1階和N-2階方法的總和,
例如:樓梯階數 方法
1 1
2 2
3 3
4 5
5 8
開始編寫代碼:因考慮到樓梯越高方法越多則采用long long int;
1 #include <stdio.h>
2
3 int main() 4 { 5 long long int a[90]; 6 int i; 7 a[1]=1; 8 a[2]=2; 9 for(i=3;i<90;i++) 10 { 11 a[i]=a[i-1] + a[i-2]; 12 } 13 int n; 14 while((scanf("%d",&n))!=EOF) 15 printf("%d",a[n]); 16 return 0; 17
18 }