Loading

摘要: 果然我的数据结构还是太弱了。 link 对于 F1,可以操作分块。 这里谈一谈对操作分块的理解: 每次询问时,对块内的修改需要快速查询,或者与块前面的修改快速结合。 对于前面的操作,有两种处理方法: 将前面的修改打包,也就是每求完一个块就加入对应的修改到全局维护中,然后用不超过根号左右的复杂度查询。 阅读全文
posted @ 2025-12-17 15:16 Sktn0089 阅读(7) 评论(0) 推荐(0)
摘要: 超级无敌的题目。 link 记当前询问为 \((x, y, z)\)。 考虑两人的策略是什么。我们需要一些转化:记某个点到 \(A,B\) 的距离为 \(a, b\),我们先让答案加上 \(\frac {a - b} 2\)。第一个人选 \(u\) 会加上 \(\frac {a + b} 2\),第 阅读全文
posted @ 2025-12-15 19:16 Sktn0089 阅读(5) 评论(0) 推荐(0)
摘要: link 有点牛逼啊这题。 考虑你取路径和取含根连通块,这两部分的没有很明显的贪心关系,只能将它们同时 DP 决策。 对于 \(t = 0\) 的 subtask 有个很明显的做法,就是在 dfs 序上 dp,多重背包部分用单调队列优化。这告诉我们正解一定是在 dfs 序上做 dp 的,或者用一些更 阅读全文
posted @ 2025-11-12 19:33 Sktn0089 阅读(47) 评论(0) 推荐(1)
该文被密码保护。 阅读全文
posted @ 2025-11-04 15:13 Sktn0089 阅读(6) 评论(0) 推荐(0)
摘要: link 连续性相关的题目。 先二分连续段的长度 \(mid\) 并判定。如何判定呢,可以求出使用的 \(\mathtt 1\) 数量的最小值和最大值。 记最终串中 \(\mathtt 1\) 的数量为 \(k\),记这两个值分别为 \(k_{\min}, k_{\max}\),如果 \(k < k 阅读全文
posted @ 2025-11-03 15:41 Sktn0089 阅读(19) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2025-10-24 14:47 Sktn0089 阅读(2) 评论(0) 推荐(0)
摘要: 高手。link 惯性思维很容易想到 Hall 定理 + 线段树 去处理,我一直想了 2h+,事实上有另外一种思路。 由于保留的所有区间都覆盖了位置 \(i\),我们考虑贪心做最大匹配:从左到右扫描每个位置,优先用 \(r\) 小的区间做匹配。 这样有个好处,我们可以把匹配的位置分为 \(\le i\ 阅读全文
posted @ 2025-10-23 18:40 Sktn0089 阅读(40) 评论(0) 推荐(0)
摘要: 此处应该有「笔记」。link 似乎很难有多项式做法,但是一个强大的线性代数能巧妙地解决这个问题。 原题相当于求解 \[\sum\limits_{x\in \mathbb F_2^n} \left [\left (\sum\limits_{(i, j)\in E} x_ix_j \right) \bm 阅读全文
posted @ 2025-10-14 22:21 Sktn0089 阅读(34) 评论(0) 推荐(0)
摘要: 此处应该有「笔记」。link 对于 \(n\le 2500\) 的分数是容易的:设 \(f_{i, j}\) 表示从 \((0,\_)\) 走到 \((j,\_)\) 分 \(i\) 段的情况下穿越障碍物的最小次数,最后求个凸包来查询。 使用线段树可以做到 \(\mathcal O(n ^ 2 \l 阅读全文
posted @ 2025-10-03 21:14 Sktn0089 阅读(17) 评论(0) 推荐(0)
摘要: 感觉还是因为考场上没有用草稿纸,一直在原地思考。在草稿纸上多画画,可以拓展可能的入手点,更直观地刻画。 考虑将整棵树划分为若干个块,其中同一个块内每个点的选择方案都相同,对应的 \(x\) 也相同,并且每个块是极大的。 每个块可能会选择包掉其他的块,手模一下发现如果包的时候不把对应的整个块包掉是不优 阅读全文
posted @ 2025-09-29 15:35 Sktn0089 阅读(45) 评论(1) 推荐(0)