
ACM-隐式图搜索
文章平均质量分 75
路小白_zZ
这个作者很懒,什么都没留下…
展开
-
uva 10085(隐式图搜索)
题意:题解:原创 2014-08-24 16:47:37 · 1055 阅读 · 0 评论 -
某校赛题(bfs+状态压缩)
题意:有n个城市,m条路,给出了m条路的连通情况,保证n个城市一定是连通的,然后给出l个城市表示着火了,然后选p个城市(p 题解:先用状态压缩从l个城市中选p个城市,全部情况枚举出来,然后bfs直接暴力找出几天后城市全部被标记(着火)。#include #include #include #include #include using namespace std;const i原创 2015-04-19 23:01:28 · 667 阅读 · 0 评论 -
uva 1533(bfs+状态压缩)
题意:有一个棋盘如下,黑色表示有棋子,白色表示空,棋盘初始状态为有一个位置n为空,其他位置都有棋子。每次可以选择一个棋子在一条直线上隔一个或连续多个棋子跳到空白位置,然后这一个或多个棋子就被拿走,问最少几步可以使棋盘上的棋子拿走到只剩下一个且位置和初始空白位置相同。输出几步和每步的起始与落子位置。输出字典序最小的解,无解输出IMPOSSIBLE。题解:因为棋盘上有15个位置,可以用原创 2015-04-22 23:52:35 · 1180 阅读 · 0 评论 -
hdu 5012(bfs)
题意:给出两个正方体,每个正方体都有6种颜色,问是否可以经过左转,右转,前转,后转四种转法让两个正方体看起来一样(对应面颜色相同),最少转几次。题解:bfs水题。#include #include #include using namespace std;const int N = 7;struct Cube { int c[N]; int step; b原创 2015-03-17 18:56:50 · 830 阅读 · 0 评论 -
hdu 1495(bfs)
题解:gei#include #include #include #include using namespace std;const int N = 105;struct ST { int ke[3]; int step;}st, st1;queue q;int vis[N][N];int n, m, s, flag[3];int judge(ST temp)原创 2014-08-29 18:40:26 · 783 阅读 · 0 评论 -
uva 704(隐式图搜索)
题意:题解:原创 2014-08-27 14:55:29 · 782 阅读 · 0 评论 -
uva 321(隐式图搜索)
题意:题解:#include #include #include #include using namespace std;const int N = 15;const int MAX = 800;struct ST { int room, step, lst, step1[MAX], step2[MAX];}st, st1, ans;int r, d, s,原创 2014-08-26 09:02:43 · 904 阅读 · 0 评论 -
uva 310(隐式图搜索)
题意:题解:#include #include #include #include #include #include #include using namespace std;string a, b, sta, fin;queue q;int flag;map m;void init() { flag = 0; while (!q.empty()) q原创 2014-08-25 13:52:59 · 799 阅读 · 0 评论 -
uva 10603(隐式图搜索)
题意:给出三个杯子的容量,前两个是空的,第三个装满水,然后给出了一个目标水量,问如果杯子之间的水互相倾倒(一杯空或另一杯满算倒水一次)是否某个杯子里的水能达到目标水量,如果可以输出最小倒水量和目标水量的值,否则将目标水量减少,最接近目标水量且能够实现的同样输出最小倒水量和此时目标水量的值。题解:普通的倒水用bfs能够得到最少倒水次数以达到目标水量,但是这道题让求的是最少倒水量,所以在原本b原创 2014-08-23 19:58:53 · 833 阅读 · 0 评论 -
uva 10422(隐式图搜索)
题意:题解:原创 2014-08-24 15:28:45 · 854 阅读 · 0 评论 -
acdream 1681(bfs)
题意:有一条河,河中有n个石头,给出了河的宽度和石头的位置,一个人要渡河,给出了这个人最远跳多远。问最少跳几下跳到对岸,或者如果跳不到那么就输出可以离对岸最近的距离。题解:bfs,直接暴力把所有可能跳的情况都过一遍就可以找到解了。#include #include #include #include using namespace std;const int N = 1005;原创 2015-04-16 16:08:16 · 668 阅读 · 0 评论