![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
搜索
文章平均质量分 81
ygqwan
这个作者很懒,什么都没留下…
展开
-
排列数
题目描述:就是给你很多符号,把他们的所有组合都输出来代码如下,可以参考我的上一篇组合数#includeint count,deep;char a[6]={' ','+','-','*','/'};char goal[21];void dfs(char m,int count){ int j,i; goal[count]=m; if(count==deep){原创 2012-07-28 08:34:19 · 506 阅读 · 0 评论 -
poj 2243 a星搜索
a星算法我不介绍了,参考这个链接直接上这个题目的代码:#include #include #include #include #include using namespace std;int dir_x[] = {-2, -1, 1, 2, 2, 1, -1, -2};int dir_y[] = {1, 2, 2, 1, -1, -2, -2, -1};cons原创 2013-08-23 22:54:41 · 933 阅读 · 0 评论 -
NYOJ21 三个水杯
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=21题目思路 : 广搜题目ac代码:#include #include #include #include #include #include #include #include using namespace std;const int M =原创 2013-07-07 15:16:36 · 1655 阅读 · 1 评论 -
nyoj_20 吝啬的国度
题目连接:点击打开链接邻接表中的节点储存的有用信息有两点==关联数据域:1:节点的数据域的父亲是谁==哪一点(数据域)指向我,需要注意的是这里的父亲不是指父节点;无用信息就是 节点与节点之间的指针域数据;#include#include#include#includeusing namespace std;const int MAX=100001;typed原创 2012-08-03 16:03:55 · 709 阅读 · 0 评论 -
Topplogical-Sort
Topological Sort程度★ 难度★★楔子在枚举所有排列的问题之中,如果我们另外再限制谁要排在谁前方、谁要排在谁后方,那么在这些限制之下,合理的排列还会剩下哪些呢?【注:枚举所有排列,读者们可另行参考「Enumerate all n-tuples」一文。】先后限制与图谁要排在谁前方、谁要排在谁后方,其实就是两两之间的关系,故可以改用图来表示转载 2013-04-27 19:59:47 · 874 阅读 · 0 评论 -
HDU 1010 Tempter of the Bone(DFS+奇偶剪枝)
第一次用奇偶剪纸,记录一下吧#include #include #include #include #include using namespace std;class NODE{public: NODE(int x,int y,int times):x(x),y(y),times(times){}; NODE(){}; NODE(cons原创 2013-03-26 18:57:42 · 777 阅读 · 0 评论 -
nyoj_42 一笔画问题
题目连接:jyoj_42(一笔画问题)题意:zyc从小就比较喜欢玩一些小游戏,其中就包括画一笔画,他想请你帮他写一个程序,判断一个图是否能够用一笔画下来。规定,所有的边都只能画一次,不能重复画。思路:(1).用搜索或者并查集判断是否连通 (2).用欧拉图判断是否可以一笔走完 注意:并查集的集合都是用树作为储存结构的,所原创 2012-08-04 10:23:47 · 11727 阅读 · 0 评论 -
hdu1195 Open the Lock
题目的意思是密码锁开锁的意思用光搜写的:#include #include #include #include #include #include using namespace std;class NODE{public: NODE(){}; NODE(const NODE &aa) { step=aa.step; cur=aa.cur; for(in原创 2013-03-28 12:22:53 · 778 阅读 · 0 评论 -
poj 1321 棋盘问题
题目连接:http://poj.org/problem?id=1321#include#includeusing namespace std;const int MAX=9;char map[MAX][MAX];bool visit[MAX];int k,n,count_q;void dfs(int cur,int tot_q ) //cur 是第cur行,tot_原创 2012-09-27 21:38:39 · 613 阅读 · 0 评论 -
nyoj 366 D的小L
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=366题目思路:递归+标记#include#includeconst int MAX=11;int deep,count;int a[MAX];bool visit[MAX];void dfs(int count){ if(count==deep) {原创 2012-08-21 23:25:31 · 1560 阅读 · 0 评论 -
搜索理论
宽度优先搜索bfs 一、搜索的bfs,宽度优先搜索,一般用于求最短的得到到目的地的距离,有个起始点,先把这个起始点入队列,不要忘记将这个起始点标记为已经利用,不然会走回来的,然后是与这个起始点的周围的点的监测,若可以行的通,我们一一检测这些扩展出来的点,若是目的地就结束了,若不是目的地,将改点标记为已经利用,并将该点入队列。 二、搜索的双向bfs,双向的bfs一般来说可以用单向转载 2012-08-01 13:28:35 · 1295 阅读 · 0 评论 -
组合数
题目连接:http://acm.nyist.net/JudgeOnline/problem.php?pid=32题目思路:用递归深搜组合数 描述找出从自然数1、2、...、n(0)中任取r(0个数的所有组合。输入输入n、r。输出按特定顺序输出所有组合。特定顺序:每一个组合中的值从大到小排列,组合之间按逆字典序排列。样例输入5 3样例输出原创 2012-07-28 08:25:49 · 958 阅读 · 0 评论 -
深搜之回溯法总结
回溯法是个好东西, 当自己对一个问题没有任何思路的时候就可以用回溯法, 虽然效率是一个严重的问题, 但是却能给问题一个形象的解释, 或者可以从回溯法想到一个不错的算法也不一定当遇到一个可以用到回溯法的时候需要按照如下步骤进行:1. 确定问题的一个解空间树, 这个解空间树至少包含一个你需要的那个解, 否则这个树就完全没有意义了2. 组织好这棵树, 弄明白这棵树的每一个节点代表什么原创 2013-11-10 22:04:55 · 2586 阅读 · 0 评论