DFS
DFS
River_____________
这个作者很懒,什么都没留下…
展开
-
poj 1979(DFS)
题意:求给定起点的最小连接块的组成个数分析:简单的DFS收获:加强了DFS的理解(以后要看清题意,这个竟然先输入列数,因为这个卡了好长时间。。。。。)AC代码:#include #include #include using namespace std;char s[1000][1000];int m,n;int c,d;int sum原创 2017-02-26 09:33:11 · 205 阅读 · 0 评论 -
UVA - 11210(DFS)
题意:给出十三张牌,求听哪些牌。被听的牌:这十四张牌可以组成4组A类牌和一组B类牌。A:三张牌是同花色并且是顺子 或者 三张一样的牌B:对子牌的数量很少,直接搜。注意如果已经有四张牌就不能听了。#includeusing namespace std;string str[40] ={ "1T","2T","3T","4T","5T","6T","7原创 2017-10-25 11:50:22 · 155 阅读 · 0 评论 -
POJ - 3041(二分图最大匹配)
没看出是二分最大匹配。。(能看出就用Dinic写了,但是不会手写啊哈哈哈)学习了匈牙利算法:思想是按照DFS来增广路径,寻找最大匹配#include #include #include #include #include #include #include #include #include #include using namespace std;#defi原创 2017-05-20 23:37:48 · 346 阅读 · 2 评论 -
岁月如初dfs poj1321 (类八皇后问题)
赛场上遇见搜索才知道自己的搜索很差劲。刷kuangbin补习!(*1)这是个最简单的类八皇后问题,逐行搜索就可以了,每次标记出现过棋子的列,然后一直搜索,直到deep==k的时候,ans加一就可以了。在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可原创 2017-04-06 19:24:38 · 220 阅读 · 0 评论 -
HDU 5547(DFS)
比赛时遇到搜索才知道自己对于搜索一无所知。。。学习了大神的代码,自己写下总结。r[i][k]代表在第i行有没有k出现过。c[j][k]代表在第j列有没有k出现过。我们认为当且仅当 * 所在的行和列都未出现过某个数字的时候 * 所在的位置才能填上这个数字。所以,我们对于 * 所在的行和列判断1,2,3,4 能否加入,并且需要回溯。因为结果一定存在,那么不用判断结果不存在的转载 2017-04-06 14:32:37 · 314 阅读 · 0 评论 -
poj2488(dfs)
Background The knight is getting bored of seeing the same black and white squares again and again and has decided to make a journeyaround the world. Whenever a knight moves, it is two squares in原创 2017-03-29 18:50:12 · 248 阅读 · 0 评论 -
Curling 2.0 POJ - 3009(DFS,障碍关联位置)
题意:大模拟DFS就是模拟摸摸摸分析:结合代码给出,见下方代码收获:对于萌新来说每一次都有新收获。写DFS还是要从整体的角度看问题,比如这个题中的障碍的撞碎问题怎么模拟,可以利用每次深搜到尽头之后修复被撞碎的障碍来保证其他的DFS正确(看的学长的思路,这一手很皮的)。对于一直前进的处理就是for()来确定方向,不停向前for(int j=0; ;j++)利用j来求出x和y的实时坐标转载 2017-03-09 00:15:58 · 259 阅读 · 0 评论 -
AOJ0033 (DFS)
题意:十个球按给定顺序从图中所示容器中下落,然后挡板可以让球落在左边或者右边,问给定球的顺序,是否存在两边从低到高都是递增的情况。分析:可以直接提取一个最大递增字串然后判断剩下的是否递增,也可以DFS对每次小球下落的方向进行判断。收获:正向不回溯的DFSAC:1.提取#include#include#includeusing nam原创 2017-02-26 11:19:58 · 653 阅读 · 0 评论 -
AOJ0118(DFS)
题意:求连通块的个数分析:dfs标记连续的相同块就可以了收获:dfsAC:#include#include#includeusing namespace std;char s[105][105];//int dx[4]={ -1, 1,0, 0 };//int dy[4]={ 0, 0, -1, 1 };int ma[4][2] ={原创 2017-02-26 10:49:27 · 486 阅读 · 0 评论 -
HDU - 5952(暴力DFS)
范围这么小一看就是暴力。直接爆的话会T每个点从小到大,找出包括这个点的所有满足的团,按照这样的方向,可以保证找过的点一定不会再找。#include using namespace std;int m[105][105];vectores[1111];int N, M, S;int ans;int E;int s;int v[1111];bool check(int x原创 2017-10-17 15:56:15 · 416 阅读 · 0 评论