1000ms 65536K 

蒜头君自从春节回来以后,体重就像加了特技一样duang~duang~地暴增起来。于是小蒜头打算每天爬楼梯来燃烧体内的脂肪(咦?蒜怎么会有脂肪=.=)。蒜头在爬楼梯的时候脑洞大开,因为蒜头腿短,爬楼梯的时候一次只能迈1级或2级台阶,它就想到了,假如一共有n级台阶的话,它一共有多少种方法能够爬到楼梯顶部呢?

聪明的你快来帮帮小蒜头吧~建议你使用动态规划求解哦,直接搜索是会超时的^o^

输入格式:

   第一行输入一个数n(n<=50),代表楼梯的级数。

输出格式:

   第一行输出你的方法总数。
样例1

输入:

5

输出:

8
题目

分析是重点,程序只是辅助手段

#include<iostream>
#include<cstdio>

using namespace std;

int n;
int a[110];


int main()
{
        scanf("%d",&n);
    a[1] = 1;
    a[2] = 2;
    for(int i = 3; i <= n; ++i)
       a[i] = a[i-1] + a[i-2];


    printf("%d",a[n]);
    return 0;
}
代码