02 2024 档案
CF1530F Bingo
摘要:CF1530F Bingo 题解 容斥 问至少 1 行/列/对角线 全为 1 的概率 转化为求每 行/列/对角线 至少有 1 个 0 的概率 总概率 1 减去他就是答案 每行的状态相互独立 考虑枚举列和对角线的状态,0 表示存在 0,1 表示全是 1 根据列和对角线能推出每一行的状态 每一行的状态乘
阅读全文
Day-7 模拟赛题解
摘要:Day-7 模拟赛题解 S+N 【玄英计划】 2月21日 模拟测#3【补题】 - 比赛 - 梦熊联盟 T1 数据点 3 - 5 枚举每一个问号对应的字母 Kmp,把 s 当作模式串匹配 T ,k 是 ? 的个数 代码(我也不知道为啥 T 了,鸽着) 正解 有种被诈骗了的感
阅读全文
Day-5
摘要:DP 背包 多重背包 单调队列 ??? P4141 退背包 由暴力到优化 每删一个, 做一次背包 前后缀 F(i, j) 前 i 件, G(i, j) 第i - n 件 退掉 i 物品 $
阅读全文
Day-4
摘要:模拟赛 S+N 【玄英计划】 2月18日 模拟测#2【补题】 - 比赛 - 梦熊联盟 T1 15 分 :状压, 50 分: 的 check :赛时代码 正解:贪心 根据鸽巢原理: 至少会有两项是同一个等差数列的前两
阅读全文
Day-6
摘要:字符串 难点:理解算法过程 二分 + 哈希 可以 完成 Manacher 和 exKMP Manacher P5446 R 是 S 的一个前缀 R[1, i] 的后缀的最大回文半径为 r 一次翻折:i + r == n 成立 多次翻折:目标串合法 且 目标串是一个回文串
阅读全文
P5446
摘要:P5446 由翻转可知: 因此 R 是 S 的前缀 且 R 的后缀是回文串 用 Manacher 算出最大回文半径 d 此外,R 也可以由多次反转得到 条件是: R' 经过反转后是符合R 是 S 的前缀 且 R 的后缀是回文串 的 且 R' 本身是回文串,
阅读全文
ABC341D
摘要:ABC 341 D 赛时思路: 按 lcm 分周期处理 不可行的理由: a, b 在同一个周期里 排列无规律 lcm 可能很大(周期内最多能有 2e5 左右个数), 不好预处理 正解 二分(二分结果的值) 答案序列内数的排名单增 排名容易 Check mid / n + mid / m - (mid
阅读全文
Day-3
摘要:Dfs序 CF383C 简化:子树加, 子树和(线段树 + Dfs 序) 考虑对树做一个奇偶的分层 x 的深度为奇数, x 子树中, 深度为奇数 + , 深度为偶数 - BZOJ3306 小技巧:换根, Dfs序 现在的根为 x, 原来的为 rt y 在 x 的子树内 -> 无影响 y 在 x 到根
阅读全文
Day-2
摘要:栈, 队列 P6033 操作:找min, 删min, 插入 必须线性复杂度 **特殊的性质:每次插入的元素单调递增 **, 即 b 单调 两个队列:初始的 a, 合并后的 b, 都是有序的 对 a 排序时使用桶排序(快排太慢) 总共合并 n - 1 次, 每次 P2827 如果蚯蚓长
阅读全文
Day-0
摘要:Day-0 T1 从一点开始以固定方向行走,会出现循环节 该结论由 的测试点推出 判断两个串是否相同 字符串哈希 倍增预处理出长度为 的循环节子串 T2 最小环计数 Floyd 会超时 计数由 构成的环 依题解代码 同学赛时代
阅读全文