码迷,mamicode.com
首页 > 其他好文 > 详细

台阶问题练习题 (简单的dp)

时间:2016-05-13 11:40:27      阅读:687      评论:0      收藏:0      [点我收藏+]

标签:

 

题目:

有n级台阶,一个人每次上一级或者两级,问有多少种走完n级台阶的方法。为了防止溢出,请将结果Mod 1000000007

给定一个正整数int n,请返回一个数,代表上楼的方式数。保证n小于等于100000。

测试样例:1
返回: 1
 
到达n台阶时,可以有两种方法到达n台阶,只需走一级就可以上去,或者只需走两级就可以上去,哦了
昨天晚上搞得dp几道经典题目,抽个时间把那几道在理解下。
 
 1 #include <cstdio>
 2 #include <algorithm>
 3 using namespace std;
 4 
 5 int s[100010]={0,1,2};
 6 const int c=1000000007;
 7 int main()
 8 {
 9     int n;
10     for(int i=3;i<=100000;i++)
11         s[i]=(s[i-1]%c+s[i-2]%c)%c;
12     while(~scanf("%d",&n))
13     {
14         printf("%d\n",s[n]);
15     }
16     return 0;
17 }

 

台阶问题练习题 (简单的dp)

标签:

原文地址:http://www.cnblogs.com/WDKER/p/5486909.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!