07 2022 档案

摘要:CF1681F Unique Occurrences 线段树分治练手题,半小时秒了。 考虑对每个颜色 www 计算有多少路径经过恰好一条颜色为 www 的边。 具体地,将所有颜色为 www 的边从原树中删去,对于每一条颜色为 www 的边的两端点连通块大小乘积的和即为这个颜色的答案。 将颜色看作时间 阅读全文
posted @ 2022-07-29 16:00 蒟蒻orz 阅读(1) 评论(0) 推荐(0) 编辑
摘要:ARC122F Domination 对于每个红点,其左下角的红点都可以删掉,这样红点横坐标单增纵坐标单减。 然后对于一个蓝点 (x,y)(x,y)(x,y),覆盖区间 [l,r][l,r][l,r] 的红点,代价为 max⁡(rxr−x,0)+max⁡(ryl−y,0)\max(rx_r-x,0) 阅读全文
posted @ 2022-07-28 20:29 蒟蒻orz 阅读(4) 评论(0) 推荐(0) 编辑
摘要:ARC122E Increasing LCMs 考虑本质,要求每次添加的值要比前面的值多一点不同的质因子,即要求 gcd⁡(lcm⁡j=1i−1(aj),ai)<ai\gcd(\operatorname{lcm}_{j=1}^{i-1}(a_j),a_i)<a_igcd(lcmj=1i−1​(aj​ 阅读全文
posted @ 2022-07-28 19:55 蒟蒻orz 阅读(5) 评论(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) 编辑
摘要:ARC123E Training ∑i=1n[a+⌊ic⌋=b+⌊id⌋]\sum_{i=1}^{n}[a+\lfloor\frac{i}{c}\rfloor=b+\lfloor\frac{i}{d}\rfloor]i=1∑n​[a+⌊ci​⌋=b+⌊di​⌋] 不妨设 c<dc<dc<d,排除特殊 阅读全文
posted @ 2022-07-28 19:32 蒟蒻orz 阅读(3) 评论(0) 推荐(0) 编辑
摘要:dp 做的少了。 https://www.luogu.com.cn/training/252925#problems CF1701E Text Editor 最优策略显然是从右往左删,再到开头从左往右删。 发现 sss 被最终结束的位置,按 home 之前的位置分成了 333 段,记作 a,b,c。 阅读全文
posted @ 2022-07-27 13:04 蒟蒻orz 阅读(5) 评论(0) 推荐(0) 编辑
摘要:P4585 [FJOI2015]火星商店问题 线段树分治,按时间分治,将在时间区间内的客人加入线段树。 要求异或和最大,考虑可持久化 trie 维护。 将商品按编号排序,便于询问时二分查找,再根据时间分治即可,满足任何时刻商品编号递增。 时间复杂度 O(nlog⁡2n)\mathcal O(n\lo 阅读全文
posted @ 2022-07-27 08:17 蒟蒻orz 阅读(3) 评论(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) 编辑
摘要:ARC113E Rvom and Rsrev 显然,最优是 b 尽量靠前且尽量多,而在满足 b 尽量多的时候,让 a 也尽量多。 考虑分类讨论。 以 aaa 结尾 显然,不管怎样都不会删除 b,考虑怎样让 a 尽量多。 显然,最后的 b 全在开头且连在一起,所以删 a 的本质就是使 b 连起来。 那 阅读全文
posted @ 2022-07-26 15:37 蒟蒻orz 阅读(2) 评论(0) 推荐(0) 编辑
摘要:ARC121F Logical Operations on Tree 下文叶子定义为树中最外层的点。 大大的性质:考虑当一个叶子为 1∨1\lor1∨ 时,那么我们只要最后操作这个叶子,无论如何最后都可以得到 111。 再思考合法树中叶子的其他情况: 当叶子为 1∧1\land1∧ 时,它头上的树合 阅读全文
posted @ 2022-07-25 16:41 蒟蒻orz 阅读(6) 评论(0) 推荐(0) 编辑
摘要:ARC121E Directed Tree 一个点如果想要合法,首先不能和子树中的点重复,其次不能填子树中的点的编号 —— 这会有后效性,使得我们非常困难地处理 DP 转移。但是如果我们考虑不合法,十分简单 —— 只需要填入子树中的其中一个,并且不和子树中不合法的点填同样的数字即可。 正难则反,看成 阅读全文
posted @ 2022-07-25 15:33 蒟蒻orz 阅读(6) 评论(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) 编辑
摘要:P6071 『MdOI R1』Treequery 分类讨论,设 [l,r][l,r][l,r] 的点的 LCA 为 uuu: ppp 不在 uuu 的子树内,答案为 dis⁡(u,p)\operatorname{dis}(u,p)dis(u,p)。 否则。 若 ppp 子树内有 [l,r][l,r] 阅读全文
posted @ 2022-07-22 21:14 蒟蒻orz 阅读(4) 评论(0) 推荐(0) 编辑
摘要:CF1320E Treeland and Viruses 仔细观察题目,直接上虚树。 再考虑套路 dp,发现有许多优先级不太好做。 考虑 spfa,发现一个点被感染后,另外的病毒不能走这个点,不太好做。 考虑优先队列,每次取最优的点更新,显然正解。 时间复杂度 O(nlog⁡n)\mathcal O 阅读全文
posted @ 2022-07-22 15:20 蒟蒻orz 阅读(4) 评论(0) 推荐(0) 编辑
摘要:[ARC092D] Two Faced Edges 考虑强联通分量的本质,即其中任意两点 u,vu,vu,v 都有一条 u→vu\to vu→v 的路径,同时也有一条 v→uv\to uv→u 的路径。 考虑转边强联通分量个数改变的情况,设有向边为 (u,v)(u,v)(u,v): 有一条反向边 ( 阅读全文
posted @ 2022-07-22 14:51 蒟蒻orz 阅读(7) 评论(0) 推荐(0) 编辑
摘要:[ARC092B] Two Sequences 细节超多,开始找不到任何数据结构维护。 考虑比较暴力的做法。 对答案每一位分别考虑,设当前考虑到第 iii 位。 计算所有数模 2i+12^{i + 1}2i+1 的余数,并升序排序使其满足单调性。(以下都按余数讨论) 若对于一个数 aaa,有数 bb 阅读全文
posted @ 2022-07-22 14:27 蒟蒻orz 阅读(4) 评论(0) 推荐(0) 编辑
摘要:AT4108 [ARC094D] Normalization 套路了,设 aaa、bbb、ccc 分别为 000、111、222,则所有操作得到的数字串的和必然模 333 同余。 且操作得到的数字串必然有相邻相等的数字(注意特判开始是否有相邻相等的字符)。 根据暴力输出情况发现当 n>3n>3n>3 阅读全文
posted @ 2022-07-21 16:58 蒟蒻orz 阅读(4) 评论(0) 推荐(0) 编辑
摘要:CF603E Pastoral Oddities 存在这样满足每个点的度数均为奇数的边集,充分条件是连通块的点数为偶数。 先考虑必要性,加入一边度数和增加 222 故度数和为偶数,而当满足条件的连通块点数为奇时,度数和必为奇数,矛盾。 证明充分性:对于一个偶数大小的连通块,找出其一棵生成树,从叶子开 阅读全文
posted @ 2022-07-21 16:34 蒟蒻orz 阅读(6) 评论(0) 推荐(0) 编辑
摘要:CF338E Optimize! 任意匹配,考虑将 BBB 排序,BBB 中最大的与 AAA 中最小的匹配,BBB 中次大的与 AAA 中次小的匹配,依次类推。 若满足条件,等价于 BBB 中最大的至少可以与 AAA 中 lenlenlen 个可以匹配,BBB 中次大的至少可以与 AAA 中 len 阅读全文
posted @ 2022-07-20 20:55 蒟蒻orz 阅读(3) 评论(0) 推荐(0) 编辑
摘要:CF1677E Tokitsukaze and Beautiful Subsegments 好题。 对于区间最大值,考虑单调栈维护,记一个数 aia_iai​ 左右边第一个比他大的数分别为 LiL_iLi​ 和 RiR_iRi​。 则对于区间 [l,r][l,r][l,r] 满足 Li<l≤r<Ri 阅读全文
posted @ 2022-07-20 10:52 蒟蒻orz 阅读(5) 评论(0) 推荐(0) 编辑
摘要:ARC117E Zero-Sum Ranges 2 将区间和为零转换为前缀和相等,类似于这种东西: 答案显然是每层个数 kkk,k(k−1)2\frac{k(k-1)}{2}2k(k−1)​ 的和。 考虑按层从上往下 DP,注意到前缀和相等的位置必然不相邻,并且两个位置中间都是一个峰或者坑,坑表示下 阅读全文
posted @ 2022-07-19 21:54 蒟蒻orz 阅读(1) 评论(0) 推荐(0) 编辑
摘要:CF780G Andryusha and Nervous Barriers 考虑树套树。 一维维护区间列,另一维维护列上的球的高度,保证点数正确。 维护单点加,区间查。 扫描线高度从大到小维护到每一个板时的情况。 优化:区间查是判区间球高度最小都只能穿过挡板就结束掉。 时间复杂度 O(nlog⁡2n 阅读全文
posted @ 2022-07-19 16:35 蒟蒻orz 阅读(6) 评论(0) 推荐(0) 编辑
摘要:二分答案。 鉴于 nnn 比较小,先 O(n2)\mathcal O(n^2)O(n2) 预处理出每个点最优可跳到哪里,使得路径最大值尽量小,保证不能跳到原点且权值小于等于根且编号尽量小。 考虑二分答案 limlimlim,每个分别从开始节点和终止节点跳最优点,跳到权值和超过 limlimlim 为 阅读全文
posted @ 2022-07-19 13:42 蒟蒻orz 阅读(4) 评论(0) 推荐(0) 编辑
摘要:容斥,记 gig_igi​ 表示 [1,i][1,i][1,i] 的答案。 gi=∑j=1i−1gj×min⁡k=j+1iak×(−1)i−j−1g_i=\sum_{j=1}^{i-1}g_j\times \min_{k=j+1}^{i}a_k\times(-1)^{i-j-1}gi​=j=1∑i− 阅读全文
posted @ 2022-07-19 13:20 蒟蒻orz 阅读(3) 评论(0) 推荐(0) 编辑
摘要:AT4379 [AGC027E] ABBreviate 分别记 aaa、bbb 为 111、222。 则操作 si sjs_i \ s_jsi​ sj​ 即合并为 (si+sj) mod 3(s_i+s_j) \bmod 3(si​+sj​)mod3。 值为 000 表示无法合并成一个;否则可以。 阅读全文
posted @ 2022-07-18 19:30 蒟蒻orz 阅读(7) 评论(0) 推荐(0) 编辑
摘要:ARC110F Esoswap 由于 0∼n−10\sim n-10∼n−1 的特殊性,每次固定询问一个位置,询问 nnn 次一定会得到 000,且每次在这个位置上的数不会重复(000 除外)。 于是考虑倒序将数固定,正序会出现问题。 然后把倒序排列转为正序排列。 具体地,先把 111 交换到位置 阅读全文
posted @ 2022-07-18 18:12 蒟蒻orz 阅读(3) 评论(0) 推荐(0) 编辑
摘要:CF1635F Closest Pair xxx 递增,考虑维护 www。 考虑匹配,由 www 大的匹配 www 小的。 显然,单调,若 i≤j≤ki\leq j\leq ki≤j≤k,若 wk>wjw_k>w_jwk​>wj​,那么最优的匹配一定不是 (i,k)(i,k)(i,k)。 故考虑维护 阅读全文
posted @ 2022-07-18 14:54 蒟蒻orz 阅读(3) 评论(0) 推荐(0) 编辑
摘要:AT2336 [ARC069D] Flags 二分答案,2-sat 判定,线段树优化建边。 线段树上父亲向儿子连边。 对于每个点 xxx,连向与他距离不超过 midmidmid 的点的反点,表示选 xxx 就只能选与他距离不超过 midmidmid 的点。 最后跑 tarjan 判定即可。 时间复杂 阅读全文
posted @ 2022-07-17 12:03 蒟蒻orz 阅读(3) 评论(0) 推荐(0) 编辑
摘要:好题。 考虑 cdq 分治维护偏序。 按照横坐标递增排序,再按照纵坐标递减归并。 考虑左半边和右半边的点对,对于左半边合法点 ppp,将右半边纵坐标 ≥yp\geq y_p≥yp​ 的点加入单调栈,同时维护横坐标单增。 对于左半边内部的影响,另用一个单调栈维护,横坐标递减,答案累加时二分右边栈内纵坐 阅读全文
posted @ 2022-07-16 15:39 蒟蒻orz 阅读(2) 评论(0) 推荐(0) 编辑
摘要:CF464E The Classic Problem 最短路,显然不具备单 log⁡\loglog 做法,考虑维护高精二进制数,支持单点加一。 显然高精不行,维护二进制数的 trie 较为复杂,考虑本质相同的值域线段树。 支持比较大小、区间赋零和单点赋一操作。 分别想,比较大小,即维护区间哈希值,先 阅读全文
posted @ 2022-07-14 20:04 蒟蒻orz 阅读(2) 评论(0) 推荐(0) 编辑
摘要:AT4162 [ARC099C] Independence 对于完全子图,考虑补图性质,即图内任意两个均无边。 若原图可分为两个完全子图,那么补图内子图无边,两子图间可有边,这不正是二分图吗? 染色判断奇环无解,求出每连通块答案,可行性 DP 计算答案即可。 时间复杂度 O(n)\mathcal O 阅读全文
posted @ 2022-07-14 19:03 蒟蒻orz 阅读(3) 评论(0) 推荐(0) 编辑
摘要:AT4163 [ARC099D] Eating Symbols Hard 手玩数据,不难发现,这几种操作类似于子串哈希的过程。 区间操作序列判断相同更坚定了我们的想法,哈希解决问题。 考虑维护前缀哈希,一个区间 [l,r][l,r][l,r] 的哈希值,应该是 [1,r][1,r][1,r] 的哈希 阅读全文
posted @ 2022-07-14 18:58 蒟蒻orz 阅读(4) 评论(0) 推荐(0) 编辑
摘要:常见优化建图技巧 习题 题解。 已完成[8/11] 题解[8/11] 1.P5025 [SNOI2017]炸弹(紫) 容易想到每个炸弹向它爆炸范围内的炸弹连边,跑多源搜索,能抵达的节点数量即是答案。 考虑线段树建边优化,线段树内父亲向儿子连边,炸弹向范围区间连边,边数 O(nlog⁡n)\mathc 阅读全文
posted @ 2022-07-01 11:40 蒟蒻orz 阅读(8) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示