bfs+状态压缩。
一开始我很挫的用了 vis[21][21][2][2][2][2][2][2][2][2][2][2]; G++,300+ms;
然后后来想到可以用二进制啊。笨。就改成了 vis[21][21][1024] G++,78ms;
#include
#include
#include
#include
#include
#include
#include
...
分类:
其他好文 时间:
2014-10-21 17:49:45
阅读次数:
230
胜利大逃亡(续)
Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 5283 Accepted Submission(s): 1815
Problem Description
Ignatius再次被魔王抓走了(...
分类:
其他好文 时间:
2014-09-26 21:47:19
阅读次数:
200
把手中持有的钥匙状态状压一下即可,然后vis访问标记的时候,开个三维,多一维即为当前持有钥匙状态,这样就能祛除重复标记困难走点的问题,跟网络赛那题很像,网络赛的更难点,这个简单点
int n,m,t;
int sx,sy,ex,ey;
char mp[20 + 55][20 + 55];
bool vis[20 + 5][20 + 5][(1<<10) + 5];
int dir...
分类:
其他好文 时间:
2014-09-23 01:12:13
阅读次数:
330
这题的算是BFS中应用状压的一个模板题吧,没啥难度,用key来存储已获得的钥匙,状压一下就可以了
不过我写的过程中,犯了好多SB错误,导致调试了好久才A,本来仔细可以1A的说
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
...
分类:
其他好文 时间:
2014-09-13 12:09:15
阅读次数:
245
Ignatius再次被魔王抓走了(搞不懂他咋这么讨魔王喜欢)…… 这次魔王汲取了上次的教训,把Ignatius关在一个n*m的地牢里,并在地牢的某些地方安装了带锁的门,钥匙藏在地牢另外的某些地方。刚开始Ignatius被关在(sx,sy)的位置,离开地牢的门在(ex,ey)的位置。Ignatius每...
分类:
其他好文 时间:
2014-09-05 21:03:32
阅读次数:
220
#include
#include
#include
#include
using namespace std;
const int N = 25;
char map[N][N];
int vis[N][N][1<<11];
struct Node
{
int x,y,step;
int key;
};
int dx[6]={0,0,1,-1};
int dy[6]={1,-...
分类:
其他好文 时间:
2014-08-30 12:39:39
阅读次数:
196
状压一下然后随意写,注意如果你被魔王抓了一次钥匙就全丢了哦,这样第二个样例就可以解释为什么是-1而不是20了#include #include #include #include #include #include #include #include #include #include #inclu...
分类:
其他好文 时间:
2014-08-26 11:27:45
阅读次数:
143
题目链接:
啊哈哈,点我点我
题意及思路
两个状态压缩+bfs的题,两个题其实是一样的,所以我讲一个。。。就选1429吧。。
最开始我以为跟普通的bfs一样,所以直接写了一个朴素的bfs,一跑,前两组数据对了,但是第三组不对,一看,走过的还可以走啊,所以不能标记,结果我的bfs乱改,最后 毫无疑问改成了死循环。所以看题解。。。
思路:因为有10中不同的钥匙,每种都有两种状态,所以结合...
分类:
其他好文 时间:
2014-08-18 14:35:32
阅读次数:
203
胜利大逃亡(续)Time Limit: 2000msMemory Limit: 32768KBThis problem will be judged onHDU. Original ID:142964-bit integer IO format:%I64d Java class name:MainI...
分类:
其他好文 时间:
2014-08-14 13:52:28
阅读次数:
278
Problem Description
Ignatius再次被魔王抓走了(搞不懂他咋这么讨魔王喜欢)…… 这次魔王汲取了上次的教训,把Ignatius关在一个n*m的地牢里,并在地牢的某些地方安装了带锁的门,钥匙藏在地牢另外的某些地方。刚开始Ignatius被关在(sx,sy)的位置,离开地牢的门在(ex,ey)的位置。Ignatius每分钟只能从一个坐标走到相邻四个坐标中的其中一个。魔王每...
分类:
其他好文 时间:
2014-07-16 14:14:18
阅读次数:
197