bfs
zyz_3_14159
这个作者很懒,什么都没留下…
展开
-
LightOJ-1046-BFS
题目大意:给定一个棋盘,上面有棋子“马”,并且有等级之分,等级为i的一步最多可以走i次,走的规则与象棋里的马一样,问是否可以把所有马都归结到棋盘上的一点,如果有输出最小值,如果没有就输出-1; 题目解析:对于每个马,BFS所有棋盘上可到达的点,最后枚举棋盘上每个点看是否可以让所有棋子都到达; AC代码: #include #include #include #include #include原创 2016-10-25 00:00:57 · 246 阅读 · 0 评论 -
LightOJ-1066-bfs
题目大意:一张坐标图上有若干个食物,每个都用一个英文字母代表,现在需要按字典序一次寻找每个食物问最少需要多少路程; 题目解析:bfs即可,依次寻找,每次寻找成功之后就把上一个置位‘.’,表示可以通过; AC代码: #include #include #include #include #include #include using namespace std; int graph[11][1原创 2016-11-29 19:55:15 · 233 阅读 · 0 评论 -
LightOJ-1094-图论,bfs
题目大意:给定一棵树,求它的加权直径; 题目解析:求一棵树的直径,先bfs任意一个点返回一个点,再将那个点bfs一下即可; AC代码: #include #include #include #include #include #include #include using namespace std; const int maxn=30010; struct tree { int to,v原创 2016-11-22 00:00:58 · 192 阅读 · 0 评论 -
POJ-1465-bfs,同余剪枝
题目大意:给定一个数n,和m个数,问求n的最小倍数使得这个数的每一位都是那m个数中的; 题目解析:开始想的肯定是将这m个数慢慢dfs过去,注意如果bfs过程中如果遇到当前余数已经被发现就应该剪枝(同余定理),因为之前那个数肯定小,并且如果可以生成可行解也一定在之前那个数的基础上; AC代码: #include #include #include #include #include using原创 2017-03-11 21:51:17 · 354 阅读 · 0 评论 -
POJ-1324-bfs,位运算
题目大意:贪吃蛇游戏,要到出口所需要的最小步数; 题目解析:bfs的时候因为要考虑到身体的状态所以我们需要借助位运算,来判断下一个蛇的身体和上一个的关系; AC代码: #include #include #include #include #include #include using namespace std; const int maxn=25; int n,m,len,l; bool原创 2017-03-12 14:42:56 · 396 阅读 · 1 评论