Pku acm 1088 滑雪 动态规划题目解题报告(十五)
2008-01-03 10:09
477 查看
http://acm.pku.edu.cn/JudgeOnline/problem?id=1088
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
一个人可以从某个点滑向上下左右相邻四个点之一,当且仅当高度减小。在上面的例子中,一条可滑行的滑坡为24-17-16-1。当然25-24-23-...-3-2-1更长。事实上,这是最长的一条。输出最长区域的长度。
Opt[i][j]表示位置i j上最大的下降距离,如果其周围4个点存在高度比i j高,且opt没有ij 大的点,则opt[i][j]=opt[周围]+1;另外,这个问题中存在大量重复问题,应该将计算的结果存储起来,避免重复的计算。
关键部分的c代码为:
for(k=0;k<4;k++)
{
if(isIn(i+dx[k],j+dy[k]) && heigth[i][j]<heigth[i+dx[k]][j+dy[k]])
{
int num = dp(i+dx[k],j+dy[k]);
if(opt[i][j]<=num)
{
opt[i][j] = num+1;
}
}
}
其中const int dx[] = {0,0,-1,1},dy[] = {-1,1,0,0};表示一个点周围的4个点。带有详细注释的代码可以在http://download.csdn.net/user/china8848/获得
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
一个人可以从某个点滑向上下左右相邻四个点之一,当且仅当高度减小。在上面的例子中,一条可滑行的滑坡为24-17-16-1。当然25-24-23-...-3-2-1更长。事实上,这是最长的一条。输出最长区域的长度。
Opt[i][j]表示位置i j上最大的下降距离,如果其周围4个点存在高度比i j高,且opt没有ij 大的点,则opt[i][j]=opt[周围]+1;另外,这个问题中存在大量重复问题,应该将计算的结果存储起来,避免重复的计算。
关键部分的c代码为:
for(k=0;k<4;k++)
{
if(isIn(i+dx[k],j+dy[k]) && heigth[i][j]<heigth[i+dx[k]][j+dy[k]])
{
int num = dp(i+dx[k],j+dy[k]);
if(opt[i][j]<=num)
{
opt[i][j] = num+1;
}
}
}
其中const int dx[] = {0,0,-1,1},dy[] = {-1,1,0,0};表示一个点周围的4个点。带有详细注释的代码可以在http://download.csdn.net/user/china8848/获得
相关文章推荐
- Pku acm 2250 Compromise 动态规划题目解题报告(六)
- Pku acm 1125 Stockbroker Grapevine 动态规划题目解题报告(十九)
- Pku acm 2492 A Bug's Life数据结构题目解题报告(十)---- 并查集的应用
- Pku acm 1466 Girls and Boys数据结构题目解题报告(十七)---- 匈牙利算法求二分图的最大匹配
- Pku acm 1458 Common Subsequence 动态规划题目解题报告(五)
- Pku acm 1014 Dividing 动态规划题目解题报告(十七)
- Pku acm 1961 Period数据结构题目解题报告(十九)----kmp算法
- Pku acm 1062 昂贵的聘礼 数据结构题目解题报告(七)—单源最短路径:Dijkstra算法
- Pku acm 2406 Power Strings数据结构题目解题报告(十八)----kmp算法
- Pku acm 2406 Power Strings数据结构题目解题报告(十八)----kmp算法
- Pku acm 1125 Stockbroker Grapevine 数据结构题目解题报告(八)---- 弗洛伊德(floyd)算法
- Pku acm 3041 Asteroids 数据结构题目解题报告(十六)---- 匈牙利算法求二分图的最大匹配
- Pku acm 1961 Period数据结构题目解题报告(十九)----kmp算法
- Pku acm 3356 AGTC 动态规划题目解题报告(十)
- Pku acm 1080 Humman Gene Function 动态规划题目解题报告(八)
- Pku acm 1887 Testing the CATCHER 动态规划题目解题报告(十一)
- Pku acm 2533 Longest Ordered Subsequence 动态规划题目解题报告(十二)
- Pku acm 1179 Polygon 动态规划题目解题报告(二十)
- POJ 1088 滑雪(动态规划)(解题报告)
- Pku acm 1579 Function Run Fun 动态规划题目解题报告(二)