ABC221G 题解
原来上一次写博客已经是 thuwc 了么,为了防止下一篇就是省选游记 赶紧写篇博客证明我还活着
发现问题很像一个背包啊,但是一个点有四个状态,二维背包显然没有一个合理的复杂度通过此题
发现限制 \(x+y\) 与 \(x-y\) 和分别限制 \(x\),\(y\)是等价的,而这样可以让两边背包分别做,做完合并,大概等价于绕 \((0,0)\) 旋转 \(\frac{\pi}{4}\) 这样子
所以做两遍背包之后记录方案,最后合并就完了
考虑怎么做这个背包
我们考虑 Uplifting Excursion 的做法,先尽量多的选,然后调整即可
首先如果合法的话一定有一种方案能让我们所有转移都在 \([T-D,T+D]\) 之间完成所有转移
因为我们只关心可达性,没有权值,所以每个点第一次到达的状态就是最优状态
记录每个点的方案,bfs暴力尝试扩展即可,复杂度 \(O(nD)\)