关于深搜dps
哈哈,我又来了!

但是!今天我又带来了让人开心到窒息的
————深搜dps
其实关于深搜,概念没啥可讲的,总结一句话概括就是:一直往下搜,直到满足条件的,再回来,沿着下一条路搜,直到把路全走完为止。。。。。

关于深搜框架,我有两个:


那么,我们直接上题练练手吧:
1215:迷宫
【题目描述】
一天Extense在森林里探险的时候不小心走入了一个迷宫,迷宫可以看成是由n×nn×n的格点组成,每个格点只有22种状态,.和#,前者表示可以通行后者表示不能通行。同时当Extense处在某个格点时,他只能移动到东南西北(或者说上下左右)四个方向之一的相邻格点上,Extense想要从点A走到点B,问在不走出迷宫的情况下能不能办到。如果起点或者终点有一个不能通行(为#),则看成无法办到。
【输入】
第1行是测试数据的组数kk,后面跟着kk组输入。每组测试数据的第11行是一个正整数n(1≤n≤100)n(1≤n≤100),表示迷宫的规模是n×nn×n的。接下来是一个n×nn×n的矩阵,矩阵中的元素为.或者#。再接下来一行是44个整数ha,la,hb,lbha,la,hb,lb,描述A处在第haha行, 第lala列,B处在第hbhb行, 第lblb列。注意到ha,la,hb,lbha,la,hb,lb全部是从00开始计数的。
【输出】
kk行,每行输出对应一个输入。能办到则输出“YES”,否则输出“NO”。
【输入样例】
2
3
.##
..#
#..
0 0 2 2
5
.....
###.#
..#..
###..
...#.
0 0 4 0
【输出样例】
YES
代码如下
具体思路是这样的:
首先我们看只要有解就输出,所以其实不用用回溯;
图中的小人可以向上下左右四个方向移动,所以我存两个数组,dx【4】={1,-1,0,0},dy【4】={0,0,1,-1}来表示向哪移动,如当i=1是,x=1,y=0,也就是向左移动一格;
我们把不能走的格子设为1,他所到达的地方不能是边界之外,也不能是1;
然后我们就可以愉快地深搜啦,直到搜到终点,结束!!!

是不是有点理解了?其实我赌没理解。。。。。
再来道题吧
1212:LETTER【题目描述】给出一个roe×colroe×col的大写字母矩阵,一开始的位置为左上角,你可以向上下左右四个方向移动,并且不能移向曾经经过的字母。问最多可以经过几个字母。 【输入】第一行,输入字母矩阵行数RR和列数SS,1≤R,S≤201≤R,S≤20。 接着输出RR行SS列字母矩阵。 【输出】最多能走过的不同字母的个数。 【输入样例】3 6 【输出样例】6 |
(复制加粘贴)这是一道简单的搜索题(我信你个鬼)题目的意思是指在字母表中,向上下左右四个方向探索,如果字母重复则结束这个方向的探索。以样例为例,先从H开始探索,向上不能探索,向右继续探索,H->F,向上不能探索,向右H->F->D,再向右则F重复,向下H重复,向左F重复,所以,回溯到F,继续向下探索,
那么,我们就可以嘿嘿啦
就这样吧!!!再见 !!!

关于深搜dps的更多相关文章
- I深搜
<span style="color:#330099;">/* I - 深搜 基础 Time Limit:1000MS Memory Limit:10000KB 64b ...
- HDU--杭电--1195--Open the Lock--深搜--都用双向广搜,弱爆了,看题了没?语文没过关吧?暴力深搜难道我会害羞?
这个题我看了,都是推荐的神马双向广搜,难道这个深搜你们都木有发现?还是特意留个机会给我装逼? Open the Lock Time Limit: 2000/1000 MS (Java/Others) ...
- 利用深搜和宽搜两种算法解决TreeView控件加载文件的问题。
利用TreeView控件加载文件,必须遍历处所有的文件和文件夹. 深搜算法用到了递归. using System; using System.Collections.Generic; using Sy ...
- 2016弱校联盟十一专场10.3---Similarity of Subtrees(深搜+hash、映射)
题目链接 https://acm.bnu.edu.cn/v3/problem_show.php?pid=52310 problem description Define the depth of a ...
- 2016弱校联盟十一专场10.2---Around the World(深搜+组合数、逆元)
题目链接 https://acm.bnu.edu.cn/v3/problem_show.php?pid=52305 problem description In ICPCCamp, there ar ...
- 2015暑假多校联合---Cake(深搜)
题目链接:HDU 5355 http://acm.split.hdu.edu.cn/showproblem.php?pid=5355 Problem Description There are m s ...
- 深搜+回溯 POJ 2676 Sudoku
POJ 2676 Sudoku Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 17627 Accepted: 8538 ...
- 深搜+DP剪枝 codevs 1047 邮票面值设计
codevs 1047 邮票面值设计 1999年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description ...
- 【wikioi】1049 棋盘染色(迭代深搜)
http://www.wikioi.com/problem/1049/ 这题我之前写没想到迭代加深,看了题解,然后学习了这种搜索(之前我写的某题也用过,,但是不懂专业名词 囧.) 迭代加深搜索就是限制 ...
随机推荐
- 【C++】近期C++特性进阶学习总结(一)
前言 C++的特性多的数不胜数,语言标准也很多,所以不定期对近期所学的C++知识进行总结,是对自身知识体系检查的良好机会,顺便锻炼一下写博客的文笔 三/五/零之法则 三之法则:如果某个类需要用户定义的 ...
- IE,FF等浏览器兼容性问题
_1:改变选中时候的背景色处理: ::selection { color:#fff; background-color: #5CB85C ;} ::-moz-selection { color:#ff ...
- nginx负载均衡中常见的算法及原理有哪些?
一.nginx负载均衡常用算法 1.1 轮询 轮询,nginx默认方式.一次将请求分配给各个后台服务器. upstream backserver { server 10.0.0.7; server 1 ...
- 继承及属性查找+super()和mro()+多态
继承及属性查找+super()和mro()+多态 一. ★继承 1. 什么是继承? 继承就是新建类的一种方式,新建的类我们称为子类或者叫派生类,被继承的类我们称为父类或者基类 子类可以使用父类中的属性 ...
- 04.python语法入门--基本数据类型
# python是一门解释型的.强类型的.动态语言# 一:数字类型# 1.1 整型int:记录人的年龄.等级.号码.个数# age = 18# print(type(age))# 1.2 浮点数 ...
- tar压缩打包实用命令总结
一.tar常用命令参数 用法:tar [参数] [文件] -v 显示指令执行过程 -c 创建压缩文件 -x 解压文件 -z 通过gzip指令处理文件 -f 指定文件 -C 解压文件到指定目录 -t - ...
- 分布式缓存NCache使用
NCache作为缓存优点币Redis有优势,但是收费的所以选用的不多吧.下面简单实操一下: 首先官网下载组件NCache Download Center (alachisoft.com),这里选择企业 ...
- linux下用crunch工具生成密码
crunch是一款linux下的压缩后仅仅38k的小程序,crunch程序在2004年及以前由email为的作者编写mimayin@aciiid.ath.cx,后续版本由bofh28@gmail.co ...
- RENIX流量发送模式——网络测试仪实操
信而泰的RENIX平台支持5种传输模式, 如下图所示. 模式一: continuous Continuous:连续发送流 持续发送方式是默认的发送模式, 它不会自动的停止, 会一直发送, 直到用户手 ...
- WPF 开发,优化 AvalonEdit 显示单行超长文本的性能。
路遥工具箱内置了一个名为"JSON 格式化"的功能.通过该功能可以将 JSON 字符串进行美化和简化(设置缩进和取消缩进). 该功能上线后收到很多客户的反馈:大部分经由网络传输的J ...



