wyh123
解题思路记录和牢骚
C++博客
|
首页
|
发新随笔
|
发新文章
|
联系
|
聚合
|
管理
随笔:34 文章:1 评论:1 引用:0
HDOJ 2041(DP)
题目大意:有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第M级,共有多少种走法?
解题思路:用dp[i]表示走到第i级的方法数。
那么走到第i级的最后一步只可能是两种,走一级或者两级,即dp[i]=dp[i-1]+dp[i-2]
注意,开始的时候是在第一级开始的,所以要求的是dp[n-1]
写完之后才发现它是斐波那契数列啊~~囧~!!!
代码:
1
#include
<
iostream
>
2
#include
<
cstdio
>
3
#include
<
cmath
>
4
5
using
namespace
std;
6
7
long
long
sum[
45
];
8
int
T,n;
9
10
int
main()
11
{ sum[
1
]
=
1
;
12
sum[
2
]
=
2
;
13
for
(
int
i
=
3
; i
<=
40
; i
++
)
14
sum[i]
=
sum[i
-
1
]
+
sum[i
-
2
];
15
cin
>>
T;
16
while
(T
--
)
17
{ cin
>>
n;
18
cout
<<
sum[n
-
1
]
<<
endl;
19
}
20
return
0
;
21
}
22
发表于 2011-07-31 10:58
wyh
阅读(215)
评论(0)
编辑
收藏
引用
所属分类:
DP
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
相关文章:
poj 1042(DP)
poj 1036(DP)
poj 1015(DP)
HDOJ 1176(DP)
HDOJ 2041(DP)
HDOJ 2067(DP)
HDOJ 1267(DP)
网站导航:
博客园
IT新闻
BlogJava
博问
Chat2DB
管理
<
2024年12月
>
日
一
二
三
四
五
六
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
给我留言
查看公开留言
查看私人留言
随笔分类
DP(8)
(rss)
比赛总结
(rss)
博弈
(rss)
二分
(rss)
模拟(3)
(rss)
数据结构
(rss)
数学(19)
(rss)
搜索(1)
(rss)
随笔档案
2011年8月 (19)
2011年7月 (15)
文章分类
DP
(rss)
模拟
(rss)
数据结构
(rss)
数论(1)
(rss)
搜索
(rss)
图论
(rss)
文章档案
2011年7月 (1)
搜索
最新评论
1. re: HDOJ 2067(DP)
压根就没有看懂题意的路过~~!
--wgh
阅读排行榜
1. poj 1015(DP)(1030)
2. HDOJ 2563(递推)(845)
3. poj 1029(模拟)(777)
4. HDOJ 1286(欧拉函数)(661)
5. poj 1042(DP)(653)
评论排行榜
1. HDOJ 2067(DP)(1)
2. HDOJ 2041(DP)(0)
3. 2011/7/31(0)
4. HDOJ 2044(DP)(0)
5. HDOJ 2563(递推)(0)