搜索——滑雪(poj1088)
题目链接:
http://poj.org/problem?id=1088
题目描述:
Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子
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更长。事实上,这是最长的一条。
Input
输入的第一行表示区域的行数R和列数C(1 <= R,C <= 100)。下面是R行,每行有C个整数,代表高度h,0<=h<=10000。
Output
输出最长区域的长度。
Sample Input
5 5
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
Sample Output
25
这是一道dp思想的搜索题,和dp区别就是数据并不是线性的,每一步都有四个方向可走,于是乎需要深搜。。剪枝的话,就是利用记忆数组去除重复的计算吧~
#include <stdio.h>
#include <string.h>
int map[222][222],len[222][222];
int dir[4][2]={{-1,0},{0,1},{1,0},{0,-1}};
int r,c;
int dp(int i,int j)
{if(len[i][j]!=0)return len[i][j];int maxx=0,s;for(int t=0;t<4;t++){int temx=i+dir[t][0],temy=j+dir[t][1];if(temx>=0&&temx<r&&temy>=0&&temy<c&&map[temx][temy]<map[i][j]){s=dp(temx,temy);if(s>maxx)maxx=s;} }len[i][j]=maxx+1;return maxx+1;
}int main()
{while(~scanf("%d%d",&r,&c)){int mx=-1;memset(len,0,sizeof(len));for(int i=0;i<r;i++)for(int j=0;j<c;j++)scanf("%d",&map[i][j]);for(int i=0;i<r;i++)for(int j=0;j<c;j++){len[i][j]=dp(i,j);if(len[i][j]>mx)mx=len[i][j];}printf("%d\n",mx); }return 0;
}
搜索——滑雪(poj1088)相关推荐
- 记忆化搜索题目总结(1)
记忆化搜索题目总结(1) 记忆化搜索题目总结1 一 概述 二 引题 DFS做法 记忆化搜索解法 三 例题 数字三角形 滑雪 矩形嵌套 硬币问题 New Year and Fireworks 一. 概述 ...
- Python爬虫 | 以滑雪为例演示大众点评商铺信息采集!
1.简述 2.字体反爬处理 2.1.获取字体文件链接 2.2.创建三类字体与实际字符映射关系 3.单页店铺信息解析 4.全部页数据获取 4.1.获取数据页数 4.2.采集全部数据 5.总结 冬天是一个 ...
- Python爬虫 | 以滑雪为例演示大众点评商铺信息采集(字体反爬)
文章目录 1.简述 2.字体反爬处理 2.1.获取字体文件链接 2.2.创建三类字体与实际字符映射关系 3.单页店铺信息解析 4.全部页数据获取 4.1.获取数据页数 4.2.采集全部数据 5.总结 ...
- 【AcWing】数位统计DP、树形DP、状态压缩DP、记忆化搜索
[AcWing]数位统计DP.树形DP.状态压缩DP.记忆化搜索 一.数位统计DP 二.状态压缩DP 三.树形DP 四.记忆化搜索 一.数位统计DP 计数问题 给定两个整数 a 和 b,求 a 和 b ...
- 国庆七天乐——第一天
20171001 所学内容:分治倍增,搜索模拟,位运算+考试 [时间复杂度] 表示运行时间的增长趋势 T(N)=T(N/2)+O(1) 二分查找 T(N)=2*T(N/2)+O(1) 线段树的节点个 ...
- 越烧钱越上瘾,年轻人为何沉迷「白色鸦片」?
来源丨豹变 ID:baobiannews 作者 | 刘霞 编辑 | 刘杨 「核心提示」 继"露营热"后,滑雪又成为了年轻人的消费新宠.近两年,受冬奥会的利好因素影响,滑雪吸引了越来 ...
- 算法笔记——常见DP问题汇总
DP问题 线性DP 数字三角形 最长上升子序列 最长公共子序列 区间DP 石子合并 计数类DP 整数划分 数位统计类DP 计数问题 状态压缩DP 蒙德里安的梦想 最短Hamilton路径 树形DP 没 ...
- ACM 训练大纲【CSUST_ACM】
来源:彪神发的训练文档 ACM 训练大纲 ...
- ACM 训练大纲(CSUST_ACM)
ACM 训练大纲 Changsha University of Science & Technology July 31, 2012 1 推荐题库 • http://ace.delos.com ...
最新文章
- pretty_errors_python
- 判断h5是不是在小程序中
- 【OpenCV 4开发详解】中值滤波
- 《Effective C#》读书笔记——条目10:使用可选参数减少方法重载的数量C#语言习惯...
- 【Elasticsearch】java 客户端 获取 termvectors 词频 统计
- Dubbo项目简单实践
- zuul转发服务一直报404_SpringCloud之Zuul的多个使用场景
- Linux 视频教程学习资源
- yolov4 火焰检测 火焰识别 代码 数据集 开源
- 黑客Windows攻防初级知识点整合
- tracker服务器包含什么信息,tracker服务器
- 实施数据驱动的供应链管理能力问题
- UVALive 7269 	Snake Carpet
- python爬取加密qq空间_python+selenium+requests爬取qq空间相册时遇到的问题及解决思路...
- C语言递归解决水洼问题
- 摄影网页设计制作 简单静态HTML网页作品 WEB静态摄影网站作业成品 学生DW摄影网站模板
- 最全:半导体上下游供应商汇总
- 宜家将首次参与天猫618购物节;3M启动上海结构胶国产化二期扩产项目 | 美通企业日报...
- 1102: 火车票退票费计算(函数专题)Python
- 使用百度EasyDL实现森林火灾预警识别
热门文章
- python登录界面实现密码在明文与星号间切换_两个API让星号密码框显示成明文
- python爬虫爬商品库存_利用Python爬虫爬取指定天猫店铺全店商品信息
- C++/OpenCV:error C4996: ‘fopen‘: This function or variable may be unsafe.
- PyTorch:保存/加载训练好的模型测试
- linux内核那些事之pg_data_t、zone结构初始化
- si_meminfo获取当前系统物理内存使用情况
- tf.name_scope()详解【命名空间其实就是给几个变量包一层名字,方便变量管理】
- axios.delete()请求方式(含代码)- 应用篇
- 仿QQ打开网址显示的当前网页非官方页面
- PHP随机静态页面生成系统源码雨尘SEO系统v1.3