游客 Signup | Login
中文 | En

2099 - 上台阶

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

Input

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

Output

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

Examples

Input

2
2
3

Output

1
2

Solution 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;
}

Solution 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]);
	}
}
Time Limit 1 second
Memory Limit 128 MB
Discuss Stats
上一题 下一题