39级台阶

题目描述:

    小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!

    站在台阶前,他突然又想着一个问题:

    如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?


输出格式:

输出一个整数


类似斐波那契数列


#include<stdio.h>
int main()
{
	int i,s=0;
	struct s
	{
		int odd;
		int even;
		int sum;
	}a[50];
	a[1].sum=1;a[1].odd=1;a[1].even=0;
	a[2].sum=2;a[2].odd=1;a[2].even=1;
	for(i=3;i<50;i++)	
	{
		a[i].sum=a[i-1].sum+a[i-2].sum;
		a[i].even=a[i-1].odd+a[i-2].odd;
		a[i].odd=a[i-1].even+a[i-2].even;
	}
	
	printf("%d\n",a[39].even);
	return 0;
 } 

posted @ 2018-03-31 13:02  宿星  阅读(174)  评论(0)    收藏  举报