随笔分类 -  题解

上一页 1 2 3 4 5 6 7 ··· 9 下一页
摘要:考虑根号做法,对编号分块。 记 paipa_ipai​ 表示点 iii 离开块的第一个祖先,faifa_ifai​ 表示父亲。 对于询问,不断像树剖那样跳父亲即可,单次 O(n)\mathcal O(\sqrt n)O(n​)。 对于修改,散块暴力,整块也暴力。 因为 fai<ifa_i<ifai​ 阅读全文
posted @ 2022-12-01 08:39 蒟蒻orz 阅读(2) 评论(0) 推荐(0) 编辑
摘要:注意到进行完前 iii 次操作之后,si+1s_{i+1}si+1​ 要么在 iii,要么在 i+1i+1i+1,取决于上一次 sis_isi​ 是否在 iii 位置且上一次执行的是否是 R 操作。 因此设 dpi,0/1dp_{i,0/1}dpi,0/1​ 表示进行完前 iii 次操作后,si+1 阅读全文
posted @ 2022-12-01 08:38 蒟蒻orz 阅读(1) 评论(0) 推荐(0) 编辑
摘要:CF1592F1 发现操作 222 和操作 333 的等效于执行 222 次操作 111,更优。 记 ax,ya_{x,y}ax,y​ 表示 (x,y)(x,y)(x,y) 是否为黑色,再记 bx,y=ax,y⊕ax,y+1⊕ax+1,y⊕ax+1,y+1b_{x,y}=a_{x,y}\oplus 阅读全文
posted @ 2022-12-01 08:35 蒟蒻orz 阅读(1) 评论(0) 推荐(0) 编辑
摘要:设 fi,kf_{i,k}fi,k​ 表示前 iii 个数分成 kkk 段的最小值。 转移方程: fi,k=min⁡j=1i{fj−1,k−1+c(j,i)}f_{i,k}=\min_{j=1}^{i}\{f_{j-1,k-1}+c(j,i)\}fi,k​=j=1mini​{fj−1,k−1​+c( 阅读全文
posted @ 2022-11-21 15:10 蒟蒻orz 阅读(3) 评论(0) 推荐(0) 编辑
摘要:分块。 边权非负,若一个点所处位置已被遍历过,那么这个点在块内无意义,故每个块可均摊 O(n)\mathcal O(n)O(n),总 O(nn)\mathcal O(n\sqrt n)O(nn​)。 发现散块修改会将原先无意义的点标为有意义的,考虑对块重构即可,单次根号,涉及到求点在树上的 kkk 阅读全文
posted @ 2022-09-29 14:02 蒟蒻orz 阅读(5) 评论(0) 推荐(0) 编辑
摘要:绝对众数,联想到摩尔投票,支持 O(1)\mathcal O(1)O(1) 合并,单点删除。 维护序列,用平衡树即可。 最后用值域线段树合并,根据出现次数判断得出的是否是绝对众数即可。 平衡树 O(nlog⁡n)\mathcal O(n\log n)O(nlogn),线段树合并均摊 O(nlog⁡n 阅读全文
posted @ 2022-08-30 11:59 蒟蒻orz 阅读(5) 评论(0) 推荐(0) 编辑
摘要:AT1252 IOIOI カード占い 记原数组为 010101 数组。 差分,转化为一堆 000 和 444 个 111。 每次区间翻转操作即翻转差分数组两点。 答案即翻转 444 个 111 的最小操作数,转化为操作任意两点和操作另外两次两次操作。 以每个 111 点为起点跑最短路即可,一条路径对 阅读全文
posted @ 2022-08-21 19:31 蒟蒻orz 阅读(2) 评论(0) 推荐(0) 编辑
摘要:CF1707E Replace 3500。 注意到 f(l,r)=⋃i=lr−1f(i,i+1)f(l,r)= \bigcup_{i=l}^{r-1}f(i,i+1)f(l,r)=⋃i=lr−1​f(i,i+1),即可合并。 还有,若 [l1,r1][l1,r1][l1,r1] 和 [l2,r2][ 阅读全文
posted @ 2022-08-21 11:20 蒟蒻orz 阅读(3) 评论(0) 推荐(0) 编辑
摘要:CF1285F Classical? 2900。 将所有 aia_iai​ 的因子加入集合 SSS,询问即 max⁡i∈Smax⁡j∈sij[gcd⁡(i,j)=1]\max_{i\in S}\max_{j \in s}ij[\gcd(i,j)=1]i∈Smax​j∈smax​ij[gcd(i,j) 阅读全文
posted @ 2022-08-21 09:21 蒟蒻orz 阅读(2) 评论(0) 推荐(0) 编辑
摘要:CF1076G Array Game 手推出大半,不会实现。 记必胜点表示走到此点时,下一手必胜;必败点同理。 每人都想要对方走到必胜点自己走到必败点。 有一种想法。 记 preipre_iprei​ 表示 [1,i][1,i][1,i] 后缀第一个奇数的位置。 容易发现,对于询问 [l,r][l, 阅读全文
posted @ 2022-08-11 21:24 蒟蒻orz 阅读(4) 评论(0) 推荐(0) 编辑
摘要:CF1442E Black, White and Grey Tree 所有连在一起,颜色一样的点缩成一个点,这样相邻异色。 只有白黑色时,考虑两种策略。 先选白色或黑色删,最后分开删,答案为树大小一半。 先选白色/黑色叶子删,再删黑色/白色叶子,答案为直径长度一半。 显然策略二更优。 再考虑有灰色点 阅读全文
posted @ 2022-08-11 20:33 蒟蒻orz 阅读(5) 评论(0) 推荐(0) 编辑
摘要:CF1103D Professional layer 好题。 首先考虑分解质因数,对于每个有重质因数,找一些数将指数消成 000。 好像分解不了那么多?发现有效质数集只能是 gcd⁡\gcdgcd,且不同质因子个数最多 111111 个。 状压就行了,记 fi,jf_{i,j}fi,j​ 表示选 i 阅读全文
posted @ 2022-08-11 20:13 蒟蒻orz 阅读(2) 评论(0) 推荐(0) 编辑
摘要:CF1051G Distinctification 显然,最后的 aaa 集合是唯一的。 若 aia_iai​ 两两不同,则有多个 aia_iai​ 连续的值域段,段内满足 bib_ibi​ 递减最优。 否则,将 aia_iai​ 平铺往后,与后面的值域段合并即可,并查集维护。 考虑计算答案,发现其 阅读全文
posted @ 2022-08-01 21:53 蒟蒻orz 阅读(4) 评论(0) 推荐(0) 编辑
摘要:AGC020E Encoding Subsets 设答案为 f(s)f(s)f(s),sss 为原串。 决策最后一位字符 ccc 参不参与压缩。 ccc 不参与压缩,方案数为: f(s)←{f(s−c)c=′0′f(s−c)×2c=′1′f(s)\leftarrow\begin{cases}f(s- 阅读全文
posted @ 2022-08-01 21:27 蒟蒻orz 阅读(2) 评论(0) 推荐(0) 编辑
摘要:CF1149C Tree Generator™ 不能暴力建树,考虑从括号序入手。 联想树上莫队的点括号序列,一段区间去掉匹配括号剩下的括号对应的点即为路径上的点,有特殊情况。 则这里边括号序列,发现特殊情况都给你省掉了,那么一条路径对应一个区间去掉匹配括号。 那么有,树上直径长度为任意区间去掉匹配括 阅读全文
posted @ 2022-08-01 20:12 蒟蒻orz 阅读(4) 评论(0) 推荐(0) 编辑
摘要:CF1681F Unique Occurrences 线段树分治练手题,半小时秒了。 考虑对每个颜色 www 计算有多少路径经过恰好一条颜色为 www 的边。 具体地,将所有颜色为 www 的边从原树中删去,对于每一条颜色为 www 的边的两端点连通块大小乘积的和即为这个颜色的答案。 将颜色看作时间 阅读全文
posted @ 2022-07-29 16:00 蒟蒻orz 阅读(1) 评论(0) 推荐(0) 编辑
摘要:CF1582F2 Korney Korneevich and XOR 由于值域较小,考虑在值域上搞事情。 记集合 f[i]f[i]f[i] 包含当前以 aaa 结尾的子序列的可能异或值,满足 a<ia<ia<i。 每读入一个 aaa,便对于 b∈f[a],j∈[a+1,V]b \in f[a],j\ 阅读全文
posted @ 2022-07-28 19:39 蒟蒻orz 阅读(1) 评论(0) 推荐(0) 编辑
摘要:P4585 [FJOI2015]火星商店问题 线段树分治,按时间分治,将在时间区间内的客人加入线段树。 要求异或和最大,考虑可持久化 trie 维护。 将商品按编号排序,便于询问时二分查找,再根据时间分治即可,满足任何时刻商品编号递增。 时间复杂度 O(nlog⁡2n)\mathcal O(n\lo 阅读全文
posted @ 2022-07-27 08:17 蒟蒻orz 阅读(4) 评论(0) 推荐(0) 编辑
摘要:CF981G Magic multisets 近似某月赛 E 题 risrqnis。 首先想到树套树,空间爆炸,排除。 用一棵线段树维护区间集合答案,支持 ×2\times 2×2 和 +1+1+1 操作。 怎样维护区间集合添加操作呢,观察到加的数都是同一个数,考虑一个数据结构,建 nnn 个,维护 阅读全文
posted @ 2022-07-26 15:47 蒟蒻orz 阅读(2) 评论(0) 推荐(0) 编辑
摘要:CF1479D Odd Mineral Resource CF1000F 上树,考虑树上莫队。 同理,对值域分块,记 sumisum_isumi​ 表示第 iii 块值域出现次数为奇数的数的个数,再开个桶记录一下每个数的出现次数就行了,单次修改 O(1)\mathcal O(1)O(1)。 对于询问 阅读全文
posted @ 2022-07-25 15:06 蒟蒻orz 阅读(5) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 7 ··· 9 下一页
点击右上角即可分享
微信分享提示