摘要: #POI #Year2009 #贪心 #数学 建图,对于每个环,有两种可行的方案, 是这个环内部操作,需要的代价为 \(mi\times (cnt-2)\) , \(mi\) 为这个环中的最小值, \(cnt\) 为这个环的长度 还可以用环外的一个点,需要的代价为 \(mn\times (cnt+1 阅读全文
posted @ 2024-04-18 09:02 xiaruize 阅读(10) 评论(0) 推荐(0)
摘要: POI #Year2009 #线段树 #Hall定理 考虑实际上是一个二分图匹配问题,那么这个二分图存在匹配当且仅对于 \(L\) 的任何子集右侧的度数和 \(\geq\) 左侧的 然后线段树维护左侧的区间最大和 // Author: xiaruize const int N = 2e5 + 10; 阅读全文
posted @ 2024-04-18 09:02 xiaruize 阅读(20) 评论(0) 推荐(0)
摘要: POI #Year2009 #贪心 贪心的把灭火器放到深度较小的点上,对于每个点,维护两个数组,记录距离当前点为 \(x\) 没有覆盖的点有 \(a_x\)个,距离当前点\(y\) 的灭火器有 \(b_y\) 个 然后在每个点上,合并长度为 \(len\) 或者 \(len-1\) 的路径,因为这些 阅读全文
posted @ 2024-04-18 09:02 xiaruize 阅读(10) 评论(0) 推荐(0)
摘要: POI #Year2009 #dp #bfs \(dp_{i,j}\) 表示 \(i \rightarrow j\) 的最小距离,考虑暴力的转移需要枚举两个,是 \(\mathcal{O}(m^2)\) 的 考虑将这个转移拆成 \(2\) 步,每次先枚举 \(j\) 处添加一个,再在 \(i\) 处 阅读全文
posted @ 2024-04-18 09:02 xiaruize 阅读(17) 评论(0) 推荐(0)
摘要: 分层图 #贪心 #POI #Year2010 考虑将答案的图建成一个 \(5\) 层的图,其中 \(1,2\) 为第 \(1,5\) 层,第 \(2,4\) 层为已经与 \(1,2\) 相连的点 考虑将剩下的点与第 \(2,4\) 层相连,贪心选尽可能大的 // Author: xiaruize c 阅读全文
posted @ 2024-04-18 09:02 xiaruize 阅读(10) 评论(0) 推荐(0)
摘要: 线段树 #dp #线段树优化dp #POI #Year2010 线段树维护 \(dp\) 转移即可 // Author: xiaruize const int N = 1e6 + 10; struct segment_tree { #define ls p << 1 #define rs p << 阅读全文
posted @ 2024-04-18 09:02 xiaruize 阅读(13) 评论(0) 推荐(0)
摘要: POI #Year2010 #二分 #Dinic #欧拉回路 看到最小值,具有单调性,考虑二分 对于一个 \(mid\) 如果一条边两个方向都不能走,那么必然不合法 如果只有一个方向可走,那么变为有向边 否则为无向边 考虑有向图欧拉回路存在的充要条件,需要这个图中每个点的 \(indeg=outde 阅读全文
posted @ 2024-04-18 09:02 xiaruize 阅读(9) 评论(0) 推荐(0)
摘要: POI #Year2010 #kmp #字符串 #dp #矩阵优化dp 用 \(kmp\) 处理两个串拼在一起最小增加的代价,然后 \(dp_{i,j}\) 表示选择 \(i\) 个最后是 \(j\) 的最小长度 转移枚举拼接的串 这个明显可以矩阵优化 // Author: xiaruize con 阅读全文
posted @ 2024-04-18 09:02 xiaruize 阅读(13) 评论(0) 推荐(0)