Tyvj 1004 滑雪~
Tyvj 1004
问题描述: 输入一个 r*c 的矩阵,并且矩阵中的每个元素都是
正整数,从其中某个大的元素出发,向4个方向(上下左右)
递归,直到划出一条能够通过较多数字的线,并且满足数字
从大到小。
解决方案: 其实,我们可以人为的把我们输入的每一个元素所对应
的数值当做是一座座的山峰,正如题目要求的那样,滑雪
然后尽可能从高处的山峰往低处的山峰滑行,第一次做的
时候,没看懂样例,琢磨了一段时间后,突然明白了,题目
的含义,实际上就是按照一定的路线,从最大的元素向最小的
元素走,然后记录所走的步数即可,样例很特殊,25步走出来
后,刚好构成了蛇形阵。
第一步,一一枚举每个点,看他是不是能作为我们开始滑行
的起点。
第二步,找到这个点后,向4个方向DFS,即可。
第三步,找到的那个最大的起点,就是我们的最大路线
代码: (1)在代码中,学会了一种解决搜索问题的常用方法,那就是设置
一个dis [][],数组,当我们向4个方向,也就是通常所说的
上下左右进行搜索时,我们就定义这样一个数组:
dis[4][2] = {{1,0},{0,1},{-1,0},{0,-1}};
其实很简单,,大家脑补下就行。。。。
如果所涉及的问题稍微有些复杂的话,向8个方向进行搜索
那么我们定义这样一个数组:
dis[8][2] = {{-1,-1},{-1,0},{-1,1},{0,-1},{0,1}
,{1,-1},{1,0},{1,1}};
思路和方法类似,就是又多了4个对角线上的方向而已~
(2)并且在搜索问题中,我们还要设置一个vis[][]数组,这个
数组的大小和处理问题时所开的数组一定是等大的。
并且一开始用memset对vis数组进行初始化,可以初始化为
0或者-1,,其他的数值都不行的。
贴上模板~~
int nx, ny;for ( int i = 0;i < 4;i++ ){nx = x + dis[i][0];ny = y + dis[i][1];if ( 0 <= nx&&nx < r&&0 <= ny&&ny < c&&a[x][y] > a[nx][ny] ){t = max( search( nx, ny ),t );}}
当做模板记住它~
其实在很多情况下,如果实在看不出那些大牛们的代码。
可以手模下,,虽然浪费时间,但是很容易就能理解了,
我就是这么手模过来的~~~
Tyvj 1004 滑雪~相关推荐
- tyvj p1004 滑雪
描述 trs喜欢滑雪.他来到了一个滑雪场,这个滑雪场是一个矩形,为了简便,我们用r行c列的矩阵来表示每块地形.为了得到更快的速度,滑行的路线必须向下倾斜. 例如样例中的那个矩形,可以从某个点滑 ...
- |Tyvj|动态规划|P1004 滑雪
http://tyvj.cn/p/1004 由于考虑高度问题,确保每个值都算出来,这里用的是记忆化搜索. #include<cstdio> #include<cstring> ...
- 2022-2028年中国滑雪产业投资分析及前景预测报告(全卷)
[报告类型]产业研究 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了滑雪行业相关概述.中国滑雪行业运行环境.分析了中国滑雪行业的现状.中 ...
- COJN 0575 800601滑雪
800601滑雪 难度级别:B: 运行时间限制:1000ms: 运行空间限制:51200KB: 代码长度限制:2000000B 试题描述 Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激.可是 ...
- 【ACM】杭电OJ 1004
题目链接:杭电OJ 1004 运行环境:Dev-C++ 5.11 思路: 先把先把num数组全部赋值为1:第一个颜色单独输入,从第二个开始,需要与前面的进行比较,如果前面有相同的颜色,则在目前的nu ...
- 基于PyGame的乒乓球和滑雪小游戏
基于PyGame的乒乓球和滑雪游戏 昝道广 概述 前言 乒乓球游戏规则 乒乓球游戏图形界面 乒乓球游戏部分代码 滑雪小游戏图形界面 滑雪小游戏规则 滑雪小游戏部分代码 技术分析 后记 前言 首先阿广确 ...
- [P1434 [SHOI2002]滑雪](DFS,记忆化搜索)
P1434 [SHOI2002]滑雪 题目描述 Michael喜欢滑雪.这并不奇怪,因为滑雪的确很刺激.可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你 ...
- sicily 1004 I Conduit!
2019独角兽企业重金招聘Python工程师标准>>> Description Irv Kenneth Diggit works for a company that excavat ...
- 洛谷 P2573 [SCOI2012]滑雪
题目描述 a180285非常喜欢滑雪.他来到一座雪山,这里分布着M条供滑行的轨道和N个轨道之间的交点(同时也是景点),而且每个景点都有一编号i(1<=i<=N)和一高度Hi.a180285 ...
最新文章
- 包打包和解析过程 unity_解决Unity2018打包,提示 SDK Tools version 0.0.0 < 26.1.1
- 获得虚拟服务器相对路径,在web应用中获取相对路径和绝对路径
- 学校SOLARIS ORACLE很好的电子教材
- 编写实现atoi函数
- 一般性网络错误 请检查网络文档_如何编写好的软件设计文档
- ITK:从Seed开始迭代图像
- 为了不再颓废,不再堕落......转操作系统为ubuntu,转语言环境为java...
- 一个即将写入MySQL源码的官方bug解决之路
- layui修改table中的按钮_layui数据表格中如何设置按钮切换(是否置顶)与分页居中...
- python爬虫天气实例scrapy_2017.08.04 Python网络爬虫之Scrapy爬虫实战二 天气预报...
- 【VS开发】文件夹和文件选择EditBrowe控件使用
- 亚马逊创始人下月将乘自家火箭进入太空 亲弟弟同行
- Python爬取小说网站下载小说
- 依赖类型语言Idris发布1.0版本
- 如何采用类比法和类推法估算软件项目工作量
- VC++从入门到精通视频教程
- 超详细分解c 语言——实现扫雷游戏(详解)
- 12.0_[Java 多态]-多态/子类父类互转/基本引用类型互转/ instanceof 运算符
- CGAL 三维三角剖分
- 随心所欲----食堂点餐系统设计
热门文章
- 电路中 电容的作用【大全】!
- 同步传输与异步传输的区别
- iOS黑客Luca Todesco演示iOS 10 beta 8越狱
- python中beautifulsoup是什么,Python Beautiful Soup简介
- 写个续集,填坑来了!关于“Thread.sleep(0)这一行‘看似无用’的代码”里面留下的坑。
- IPAPatch: 免越狱调试、修改第三方App
- Anaconda3 jupyter 警告:FutureWarning: reshape is deprecated and will raise in a subsequent release.
- C语言面试题大汇总之华为面试题 Eddy整理
- 淘宝API系列(数据结构对象)
- Linux Vm虚拟机配置环境错误 在登录界面循环往复,登录不进去问题