
状态压缩
csu_xiji
这个作者很懒,什么都没留下…
展开
-
力扣 847. 访问所有节点的最短路径 bfs+状压
https://leetcode-cn.com/problems/shortest-path-visiting-all-nodes/ 思路:考虑用二进制表示走过的点集(状态压缩),那么可以用dis[i][j]dis[i][j]dis[i][j]表示在状态为iii的情况下到jjj点的最短路径,那么我们期望的答案就是最小的dis[2n−1][...]dis[2^n-1][...]dis[2n−1][...]。依然可以使用bfsbfsbfs来求解最短路,只不过状态是两个维度的。也可以认为这是刷表法的dpdpdp原创 2021-08-06 21:36:32 · 293 阅读 · 0 评论 -
PIPIOJ 1176: 逃离迷宫 状压bfs
http://39.106.164.46/problem.php?id=1176 思路:状压bfsbfsbfs模板题。step[x][y][key]step[x][y][key]step[x][y][key]表示从起点出发到(x,y)(x,y)(x,y)且拥有的钥匙状态为keykeykey时所需要的最少步数,然后做bfsbfsbfs即可,只需要注意对keykeykey的判断和更新。举个例子,假设有三把钥匙,那么二进制000000000表示没有钥匙,001001001表示拥有第一把钥匙,011011011表原创 2020-10-14 01:22:07 · 231 阅读 · 0 评论 -
HDU 1429 胜利大逃亡(续) 状态压缩+bfs
http://acm.hdu.edu.cn/showproblem.php?pid=1429 添加链接描述 Ignatius再次被魔王抓走了(搞不懂他咋这么讨魔王喜欢)…… 这次魔王汲取了上次的教训,把Ignatius关在一个n*m的地牢里,并在地牢的某些地方安装了带锁的门,钥匙藏在地牢另外的某些地方。刚开始Ignatius被关在(sx,sy)的位置,离开地牢的门在(ex,ey)的位置。Ignat...原创 2019-09-28 10:21:37 · 110 阅读 · 0 评论