![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DFS&BFS
小胡子Haso
~~
展开
-
【POJ 2531】Network Saboteur
【POJ 2531】Network Saboteur图的搜索 剪枝真是门学问。。剪好了快的可真不是一倍两倍刚开始搜的思路有问题 TLE了 后来枚举点暴力搜了一发 两百多ms由于查找时权值是不断增加的 所以直接找集合间最大权的话不方便设置return点看disscuss发现有一大牛 建了两个数组 通过所有边权-两集合内部边权(去重) 得到答案 dfs的时候找最小内部边权即可 当前状态权值>当前最小内部原创 2015-08-10 11:15:46 · 867 阅读 · 0 评论 -
【HDOJ 4277】 USACO ORZ (暴搜+剪枝+去重)
【HDOJ 4277】 USACO ORZ给n个木棍 让用所有木棍组成三角形 木棍必须全部用上 可以用多个木棍构一边 问能组成多少不同的三角形 有一边长度不等的两个三角形视为不同方案枚举木棍 每个木棍可以加在三边 这样不断搜 结果需要不重复 所以每次都让传入的参数从大到小 用一个结构体和set去重 深搜的时候也要剪枝否则超时剪枝方案就是之前出现的状态再次出现剪掉也是数据水原创 2015-08-26 08:39:53 · 800 阅读 · 0 评论 -
【HDOJ 5379】 Mahjong tree
【HDOJ 5379】 Mahjong tree往一颗树上标号 要求同一父亲节点的节点们标号连续 同一子树的节点们标号连续 问一共有几种标法画了一画 发现标号有二叉树的感觉 初始标号1~n 根结点1可以标1或n 否则其他情况无法让下面的子树满足各自连续并且该根的儿子节点都要连续 根结点下的节点平分其他标号 画一画可以发现 每个根下最多有两颗子树 否则无法满足条件 并且两颗子树占据剩余标号的左右原创 2015-08-11 21:32:31 · 885 阅读 · 0 评论 -
【POJ 2676】Sudoku
【POJ 7676】Sudoku又是一个水数据的搜索……不过还是剪枝做了做 剪枝大法好啊!好多几百ms的 剪出来个0ms 顿感欣慰不过看discuss 3074 Sudoku数据更强大 傻傻的去做了 最后T的实在不行的时候看到discuss说用dance links。。。呵呵了= = 只在当初听说xiao爷学了一阵子。。我还是慢慢搞吧= =有兴趣的可以去看看回归此题。。我是存了三个数组分别标记行中哪原创 2015-08-10 17:17:57 · 948 阅读 · 0 评论 -
【CF 570D】Tree Requests
【CF 570D】Tree Requests树节点标号递增 规定父亲标号<儿子 dfs重标号 同时用一个数组存该节点为根的树的最小节点 一个数组存该节点为树根的最大节点 一个数组存对应深度存在的节点 再来一个数组存每一位置累计字符(26个字符 由于偶数次可压缩 故用异或即可) 每查询一个节点和他对应的深度 只需在该深度查该节点为根的最小和最大节点 然后用左右节点字符累计数互相异或 最后看它二进原创 2015-08-17 15:12:42 · 985 阅读 · 0 评论 -
【POJ 3026】Borg Maze
【POJ 3026】Borg Maze原创 2015-07-04 17:14:56 · 1261 阅读 · 0 评论 -
【POJ 1691】 Painting A Board(dfs)
【POJ 1691】 Painting A Board(dfs)Time Limit: 1000MS Memory Limit: 10000KTotal Submissions: 3582 Accepted: 1781DescriptionThe CE digital company has built an Automati原创 2016-03-25 20:10:51 · 862 阅读 · 0 评论 -
【PAT】 Deepest Root (DFS)
【PAT】 Deepest Root (DFS)A graph which is connected and acyclic can be considered a tree. The height of the tree depends on the selected root. Now you are supposed to find the root that results原创 2016-05-19 18:12:12 · 3189 阅读 · 0 评论 -
【CF 698B】Fix a Tree(dfs)
【CF 699D】Fix a Tree(dfs)D. Fix a Treetime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputA tree is a原创 2016-07-20 08:49:26 · 1515 阅读 · 0 评论 -
【HDOJ 5807】Keep In Touch(记忆化dfs)
【HDOJ 5807】Keep In Touch(记忆化dfs)Keep In TouchTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 262144/131072 K (Java/Others)Total Submission(s): 328 Accepted Submission(s): 136Problem Descript原创 2016-08-08 11:33:05 · 436 阅读 · 0 评论 -
【HDOJ 5816】Hearthstone(记忆化搜索)
【HDOJ 5816】Hearthstone(记忆化搜索)HearthstoneTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 322 Accepted Submission(s): 139 Problem DescriptionHe原创 2016-08-10 10:27:56 · 469 阅读 · 0 评论 -
【POJ 1095】Trees Made to Order(卡特兰+递归)
Trees Made to OrderTime Limit: 1000MSMemory Limit: 10000KTotal Submissions: 7155Accepted: 4094DescriptionWe can number binary trees using the following scheme: The empty tree is numbered 0.The sin原创 2016-09-01 19:59:44 · 2197 阅读 · 0 评论 -
【HDOJ 4272】 LianLianKan (vector深搜+剪枝)
【HDOJ 4272】 LianLianKan不造正规做法 不过好歹是按题意做的(读懂题有时候也不是好事TOT 据说好多随意连水果去的。。。经过5小时推出来了……整场就做了这么一道OOOOOOOOOOOTZ 题意要求只能连与他相距小于6的即最远连到下面除顶部本身外的五个中的一个 有可以发现如果有连续的连其中任意一个效果都是一样的这样搜索策略就是看下面五个中不连续的然后挨个接着搜。。原创 2015-08-26 08:17:31 · 872 阅读 · 0 评论 -
【POJ 1129】Channel Allocation
【POJ 1129】Channel Allocation暴搜做的 虽然放在了剪枝里。。。 大水题 不过好歹是训练计划第二周最后一题 做个纪念发一贴~(然而只是把上周计划完成了。。直接上代码:#include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#define INF 0x3f3f3f3fusing na原创 2015-08-10 19:16:26 · 980 阅读 · 0 评论 -
【HDOJ 5335】Walk Out
【HDOJ 5335】Walk Out原创 2015-07-31 13:29:28 · 744 阅读 · 0 评论 -
【HDOJ 1045】Fire Net--dfs
【HDOJ 1045】Fire Net原创 2015-07-29 13:18:51 · 727 阅读 · 0 评论 -
【POJ 1416】 Shredding Company
【POJ 1416】 Shredding Companydfs貌似不剪枝也能过 数据水水的 不过练练剪枝拓一下思路每组两个数t num 输入0 0结束 分割数字num为任意组 让这几组加和最接近t(且<=t) 无解输出error 多解输出rejected 否则输出加和还有分割情况做搜索剪枝有点小经验 搜索的时候逆向搜索 求最大就从大往小搜 求最小就从小往大搜 这样一出现不足(求最大时)或溢出(求最原创 2015-08-10 14:05:07 · 1493 阅读 · 0 评论 -
【HDOJ 1010】Tempter of the Bone
【HDOJ 1010】Tempter of the Bonedfs原创 2015-07-31 15:44:03 · 722 阅读 · 0 评论 -
【POJ 3083】Children of the Candy Corn
POJ【3083】Children of the Candy CornDfs+Bfs原创 2015-06-15 01:45:51 · 909 阅读 · 0 评论 -
【POJ 2965】 The Pilots Brothers' refrigerator
【POJ 2965】 The Pilots Brothers' refrigerato预处理用二进制(BFS)暴力枚举原创 2015-06-09 23:57:14 · 745 阅读 · 0 评论 -
【HDOJ 5336】XYZ and Drops
【HDOJ 5336】XYZ and Drops原创 2015-07-31 13:46:58 · 770 阅读 · 0 评论 -
【HDOJ 5326】Work
【HDOJ 5326】Work暴力搜。。纯暴力。。原创 2015-07-31 10:01:40 · 649 阅读 · 0 评论 -
【HDOJ 1016】Prime Ring Problem
【HDOJ 1016】Prime Ring Problem暴力dfs原创 2015-07-29 16:00:57 · 686 阅读 · 0 评论 -
【POJ 2049】Finding Nemo
【POJ 2049】Finding Nemo迷宫类Bfs原创 2015-06-14 17:41:56 · 1019 阅读 · 0 评论 -
【POJ 1753】Flip Game
【POJ 1753】Flip Game二进制+(BFS)暴力枚举原创 2015-06-09 01:44:41 · 729 阅读 · 0 评论 -
【UVALive 7364】Robots(逆向思维+搜索)
【UVALive 7364】Robots(逆向思维+搜索)题目大意: n个机器人在坐标0~n-1上。 有两个按钮,可以让每个位置上的机器人到该按钮指定的点去(∈[0,n−1]\in [0,n-1])。问是否可以经过几次操作,让所有机器人到一个点上。考虑最终状态是所有机器人在一个点,考虑两两机器人相互关系,从状态(i,i)开始逆向搜索,搜到的状态(a,b)经过多次A或B操作能达到(i,i)。那么遍原创 2016-10-10 21:33:05 · 724 阅读 · 0 评论