![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
搜索
文章平均质量分 75
lifajun90
这个作者很懒,什么都没留下…
展开
-
sicily 1150. 简单魔板 & 1151. 魔板
典型的广搜题目: 1) 首先把初始状态所代表的节点压入队列,初始节点的状态为12348765,父节点位置为-1(表示没有父节点),op为空,表示没有操作,标记初始节点的状态已访问,初始化step(表示当前搜索的层次)为0; 2) 当队列不为空(head 3) 用一个curTail记录当前队列的队尾,这表示了从head到curTail为层次为step的这一层原创 2012-10-28 14:06:45 · 801 阅读 · 0 评论 -
poj 3740 Easy Finding 搜索+位运算
题目大意:有一个01矩阵,问是否可以从矩阵中选出某些行,使得选出的这些行所构成的矩阵的每一列都只有一个1。 初看题目,没有好的办法,搜索吧(暴力的),由于题目中给出M ≤ 16, N ≤ 300,所以可以枚举行的所有选择情况,当然在这里就不是深搜去产生所有的选择情况了,直接通过整数来表示就行了(1对应于选择第一行,2对应于选择第二行,3对应于选择第一行和第二行。。。。。),那么要怎么样来判断所选原创 2012-10-13 16:38:29 · 606 阅读 · 0 评论 -
poj 1021 Anniversary Cake【dfs】
题目链接:http://poj.org/problem?id=1020 题目大意:给出一个大的正方形,和一个些小的正方形,判断是否可以把这些小正方形不浪费地正好拼成那一个大的正方形。 这个题和poj 1011(http://blog.csdn.net/lifajun90/article/details/8480779)很类似,上一题是拼一维的棍子,这一题是拼二维的正方形,都是用搜索的方法。原创 2013-01-08 15:15:59 · 705 阅读 · 0 评论 -
poj 1011 Sticks【dfs】
题目链接:http://poj.org/problem?id=1011 题目大意:给出一些短棍子,问这些短棍子可不可以刚好凑出一些长度相等的长棍子。 很容易想到该题是一个搜索题,搜索时,从小到大不停枚举答案(需要凑的长棍子的长度),然后判断该长度是否可行,可行即是说用一根或者多根短棍能恰好凑出每一根长棍,所以搜索的过程就是凑长棍的过程。 该题主要的难点在于剪枝,主要的剪枝方法如下(有了这几个原创 2013-01-08 14:14:54 · 707 阅读 · 0 评论 -
马周游问题【sicily 1152 &1153.】
马周游——典型的深搜问题,一般的深搜方法是对于当前位置,依次扩展它下一步可能到达的位置(这些位置在棋盘上,并且没有访问过),不过当棋盘变的很大时,这种方法会TLE,需要经过一定的优化,优化方法为:首先搜索可扩展数最少的那个位置。实现的时候可通过一个数组来记录当前位置下一步可到达的所有位置,然后对这些位置按可扩展数排序。 #include #include #include using na原创 2012-10-11 22:19:50 · 1353 阅读 · 0 评论