Loading

上一页 1 2 3 4 5 6 ··· 9 下一页
摘要: 有点意思的简单题。 答案有可二分性。合并两段,显然仍然合法。 考虑如何 check。因为答案可以被二分,我们尝试求恰好 \(x\) 段就行了。 恰好,这是 wqs 二分的内容。如何设计一个与 \(x\) 有关的凸函数呢? 这个函数大概是 \(\sum_{i=1}^x w(l_i, r_i)\) 的形 阅读全文
posted @ 2023-11-25 13:24 purplevine 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 学习:连续端 dp。 目标:最优化 \(F(S) = \sum_{i=1}^{n-1} w(A_{S_i}, A_{S_{i+1}})\),或者说,重排序列以最优化相邻两个元素产生的贡献。 考虑拆开贡献,拆成类似 \(L(a_i) + R(a_{i+1})\) 的形式。连续端 dp 通过以下两个操作 阅读全文
posted @ 2023-11-18 22:21 purplevine 阅读(29) 评论(0) 推荐(0) 编辑
摘要: 数据点分治。 考虑这个式子事实上是什么,其实它是 \(\sum i(n+1-i) f(p_i)\)。 感性看,有相当多种排列的值相同。\(f(x)=i\) 有 \(\frac{n}{2^i}\) 组解,所以,本质不同但值相同的 \(p\) 非常多,至少是 \(\prod (\frac{n}{2^i} 阅读全文
posted @ 2023-11-18 17:32 purplevine 阅读(9) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2023-11-11 13:41 purplevine 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 第一次听没听懂,补个笔记。弄懂这种奇妙拆贡献后感觉非常厉害。 答案的形式为:\(\prod (a_i + k \cdot v)\),这些 \(v\) 是前面的操作带来的影响。 我们考虑一个个加入这个 \((a_i + k \cdot v)\),并且维护很多个等价类,使得这个值可以根据分开等价类的那个 阅读全文
posted @ 2023-11-04 13:27 purplevine 阅读(13) 评论(0) 推荐(0) 编辑
摘要: 来一点更清楚的、实现方面的东西。 做法同 这篇,他的实现很优美但略微繁琐了些。 枚举 \(T\) 的形态,发现这个匹配不过是把每个 \(T\) 中当前点的儿子塞进一个 \(S\) 中当前点的儿子内。于是 \(f_{u, v}\) 表示 \(S\) 中 \(u\) 匹配 \(T\) 中 \(v\) 且 阅读全文
posted @ 2023-10-28 14:27 purplevine 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 这得是区间 dp。还需要限制一下值域。因此 dp 状态时 \(f_{l, r, x, y}\) 表示使 \([l, r]\) 区间所有值都处于 \([x, y]\) 的最小花费。设 \(g_{l, r} = \min\{f_{l, r, x, y} + a + b (x - y) ^ 2\}\)。 阅读全文
posted @ 2023-10-27 12:50 purplevine 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 感觉,好自然啊! 想法 dp,想办法分解这个博弈的过程。发现警察会从一片叶子到另一片叶子,在叶子抓住小偷时所有小偷可以全树乱走。因此 dp:\(f_{u, i}\) 表示警察位于 \(u\),全树剩余 \(i\) 个小偷时的答案。 因为两边都绝对理性,小偷在警察离开叶子后不会移动并位于多片叶子上。考 阅读全文
posted @ 2023-10-26 19:11 purplevine 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 学。 题意:区间推平,区间加,区间极值,区间历史极值。 学习资料 区间加区间历史最大值 试图在每个节点维护操作序列,这样答案一定是正确的。 具体而言,维护加标记和赋值标记,维护历史最大值 \(mx\) 和当前值 \(x\),标记形如 \(x \gets x + t\) 或 \(mx \gets \m 阅读全文
posted @ 2023-10-17 19:27 purplevine 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 想不到简单题 /fn 阅读全文
posted @ 2023-10-15 09:31 purplevine 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 模板:P4097 先考虑插入直线 在每个节点存一个 \(f_i\) 表示一条直线。需要保证 \(u\) 及其祖先的 \(f\) 中有在 \(u\) 区间的中点处取得极值的那条直线。 考虑更新。 注意到一条直线完整覆盖一个区间时,它不需要下传,因为查询它的儿子时必然经过它本身,也就能统计这条直线的贡献 阅读全文
posted @ 2023-09-29 23:36 purplevine 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 补写算法流程。 生日悖论:值域为 \(n\),时,期望随机 \(O(\sqrt{n})\)(OI-wiki 上给的是 \(\sqrt{2 n \ln 2}\))个数有数字相同。(感觉有点奇怪,原表述是这么多次有数字相同的概率是 \(\frac{1}{2}\)。) 算法流程: 尝试分解 \(n\) 的 阅读全文
posted @ 2023-09-29 16:45 purplevine 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 好玩题。 对于一个排列 \(p\),进行 \(k\) 轮冒泡,记 \(v_i = \sum_{j < i} [p_j < p_i]\),给定 \(v_i\),部分值不确定,求合法的 \(p\) 的个数。 \(p\) 由 \(v\) 唯一确定。 考虑一个个加数字进去,每次可以判断加入数字与前面数字的相 阅读全文
posted @ 2023-09-20 17:22 purplevine 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 赛时没做出来一直在往随机想。 题意挺明确。发现到 $n \times n$ 这个条件,联想到做过的 CF1172D,递归去掉一行一列的基本想法就有了。 那么让两个棋子从右下开始,走完多出的一行一列,然后走进剩余的 $(n-1) \times (n-1)$。 真可以?这就是 `*2400` 的构造?这 阅读全文
posted @ 2023-08-13 19:34 purplevine 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 1 阅读全文
posted @ 2023-08-01 15:19 purplevine 阅读(62) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 9 下一页