2099 - 上台阶

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 128 MB

有一天,三萩实在太无聊了,竟然无聊到去数台阶了。有一个楼梯一共有m级,刚开始三萩在第一级,他就想,若每次只能跨上一级或者二级,要走上m级,共有多少种走法?

题目输入

输入数据首先包括一个整数n(1<=n<=100),表示测试数据的个数,然后是n行数据,每一行包括一个整数m(1<=m<=40),表示楼梯数

题目输出

对于每个测试样例,请输出不同走法的数量。

输入/输出样例

输入格式

2
2
3

输出格式

1
2

C语言解答

#include <stdio.h>

int main(){
	
	int n, m, i, stairway[64] = {0,1,1};
	
	for (i = 2; i <= 40; i++){
		stairway[i] = stairway[i-1] + stairway[i-2];
	}
	
	scanf("%d", &n);
	
	while (n--){
		
		scanf("%d", &m);
		printf("%d\n", stairway[m]);
	}
	
	return 0;
}

C++解答

#include <stdio.h>
int a[50];
int main()
{
	int i , n , m;
	a[1]=1;
	a[2]=2;
	for(i = 3 ; i<= 41 ; i++)
	{
		a[i] = a[i - 1] +a[i - 2];
	}
	scanf("%d",&n);
	while(n--)
	{
		scanf("%d",&m);
		printf("%d\n",a[m-1]);
	}
}