状压+BFS小总结(HDU1429、洛谷P2622)
HDU1429
1.首先迷宫问题最短路径,肯定想到了BFS,但是此题多了一个条件,就是有最多十扇门,而且必须找到钥匙才能开门,题目的数据都很小。那么我们不难想到,不能单纯地使用vis[x][y]vis[x][y]vis[x][y]来判重,因为有钥匙的状态和没有钥匙的状态是不同的,每一格可以在不同状态下重复走
2.因为最多有10把钥匙,那么我们使用二进制表示每一位是否取过,即1<<i1<<i1<<i表示第iii把钥匙的状态,使用三维的vis数组判重,并在结构体中保存每个节
原创
2020-06-22 09:40:57 ·
285 阅读 ·
0 评论