P3072
因为空洞部分不是很好处理,所以考虑绕着外面搜一圈,所以从最外面的草垛的上一个点开始搜,遇到草就让 \(ans\) 加 1,如果不是草就继续往外面搜,然后剪一下枝,如果一个不是草的点四周八个格子都不是草,那就不往下搜。
P3073
向周围四个点连一条边权为高度差的绝对值的边,然后最小生成树即可。
P3074
拓扑排序之后求最大值即可。
P2698
数据结构维护区间最大/最小值,然后二分花盆的长度,\(O(nlogn)\) check即可。
P3049
\(dp_{i,j}\) 表示把 a 数组前 \(i\) 个和 \(b\) 数组前 \(j\) 个变为一样的最小花费,然后可以把 \(a_i\) 拆成 \(i\) 个 \(a_i\),操作变换一下,然后 dp。
P1849
01bfs,求 \((x_0, y_0)\) 到 \((0, 0)\) 的最短路。
标签:bnds,然后,8.25,即可,数组,dp From: https://www.cnblogs.com/wyyqwq/p/18385312