摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1429题目大意:最短时间内出迷宫,可以走回头路,迷宫内有不同的门,对应不同的钥匙。解题思路:要是没有门和钥匙,而且不能走回头路,就是个简单粗暴的BFS。有了门之后,就要状态压缩+记忆化搜索。不然这个图会搜... 阅读全文
posted @ 2014-10-15 13:32 Physcal 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1026题目大意:最短时间内出迷宫。迷宫里要杀怪,每个怪有一定HP,也就是说要耗一定时。输出方案。解题思路:要是没有输出方案,就是一个简单粗暴的BFS。一开始解决输出方案问题时,简单粗暴地在每次状态里加个v... 阅读全文
posted @ 2014-10-14 19:58 Physcal 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1312题目大意:问迷宫中有多少个点被访问。解题思路:DFS肯定能水过去的。这里就拍了一下BFS。然后发现自己BFS访问标记有问题,导致某些点被重复访问了。赶紧改了一下。#include "cstdio"#... 阅读全文
posted @ 2014-10-14 14:54 Physcal 阅读(581) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1242题目大意:多个起点到一个终点,普通点耗时1,特殊点耗时2,求到达终点的最少耗时。解题思路:如果没有特殊点,就是普通BFS。由于特殊点的介入,所以BFS树的同一深度,各个点的值可能不同。所以使用优先队... 阅读全文
posted @ 2014-10-14 00:53 Physcal 阅读(491) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1241题目大意:求一张地图里的连通块。注意可以斜着连通。解题思路:八个方向dfs一遍,一边dfs一边染色,断了之后换新颜色。做法类似Tarjan。orz,我是不是刷错顺序了。#include "cstdi... 阅读全文
posted @ 2014-10-14 00:02 Physcal 阅读(318) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1010题目大意:给定起点和终点,问刚好在t步时能否到达终点。解题思路:4个剪枝。①dep>t剪枝②搜到一个解后剪枝③当前走到终点最少步数>满足条件还需要走的步数剪枝(关键)③奇偶剪枝(关键):当前走到终点... 阅读全文
posted @ 2014-10-13 20:41 Physcal 阅读(520) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3494题目大意:给定一些被禁止的BCD码。问指定范围内不含有任何这些禁止的BCD码的数的个数。解题思路:AC自动机部分:首先insert这些被禁止的BCD码。然后打一... 阅读全文
posted @ 2014-10-13 17:24 Physcal 阅读(460) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4511题目大意:从1走到N,中间可以选择性经过某些点,比如1->N,或1->2->N,但是某些段路径(注意不是某些条)是被禁止的。问从1->N的最短距离。解题思路:AC自动机部分:如果只是禁掉某些边,最短... 阅读全文
posted @ 2014-10-11 15:13 Physcal 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://poj.org/problem?id=3691题目大意:给定N个致病DNA片段以及一个最终DNA片段。问最终DNA片段最少修改多少个字符,使得不包含任一致病DNA。解题思路:首先说一下AC自动机在本题中的作用。①字典树部分:负责判断当前0~i个字符组成的串是否包含致病DNA,... 阅读全文
posted @ 2014-10-11 00:33 Physcal 阅读(461) 评论(0) 推荐(1) 编辑
摘要: 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4417题目大意:给定一个区间,以及一个k值,求该区间内小于等于k值的数的个数。注意区间是从0开始的。解题思路:首先这题线段树可以解。方法是维护一个区间最大值max,一个区间点个数s,如果k>max,则a... 阅读全文
posted @ 2014-10-10 01:37 Physcal 阅读(620) 评论(0) 推荐(0) 编辑