12 2023 档案

摘要:CF396C 考虑将贡献表示出来:vsubtreeuv 会加上 x(depvdepu)k,然后发现这个东西可以维护整棵子树,即把 x,depu×kdepv×k 分开计算 阅读全文
posted @ 2023-12-27 23:19 Pengzt 阅读(10) 评论(0) 推荐(0) 编辑
摘要:会持续更新。 阅读全文
posted @ 2023-12-27 15:50 Pengzt 阅读(35) 评论(0) 推荐(0) 编辑
摘要:慢慢更。 阅读全文
posted @ 2023-12-27 10:49 Pengzt 阅读(67) 评论(0) 推荐(0) 编辑
摘要:ARC167D 看到排列并且有 iai,就可以直接建出图来,显然是若干个不相干的环。 如果不求字典序最小,就可以直接不在同一个环中的 i,j 直接交换就可以了,因为它要求了最小化操作数。如果求字典序最小,直接从前往后扫一遍,可以用 set 维护不在这个环中且 \(j>i 阅读全文
posted @ 2023-12-27 10:28 Pengzt 阅读(9) 评论(0) 推荐(0) 编辑
摘要:P6370 暴力是很容易的,可以直接搜索。 发现可以直接对暴力进行优化。每次有一个地方变为 O 后,重构代价太大,设这个坐标为 (i,j),同时维护一个类型为 pair<int, int> 的 to 数组表示将球放在第 i 列第一行的时候,最后到达的位置。再用一个 \(pa 阅读全文
posted @ 2023-12-27 10:21 Pengzt 阅读(12) 评论(0) 推荐(0) 编辑
摘要:P5513 容易发现,每次等价于对一个二进制数进行操作。但是这个二进制数长为 n,即需要高精。但是这样支持加一和减一是复杂度会退化为 O(n2),有一个很正常的做法就压位,仿照 bitset 的做法进行操作,复杂度 \(\mathcal{O}(\frac{n ^ 阅读全文
posted @ 2023-12-27 10:19 Pengzt 阅读(20) 评论(0) 推荐(0) 编辑
摘要:ARC105E 正向考虑是很难的,从结果入手,发现最后一定是分别包含 1n 的两个完全图。 考虑表示出这两个人一共加了多少边:n(n1)2mx(nx)x 表示点 1 所在集合的大小。 由于是判断先手还是后手必胜,所以只需看结果对 阅读全文
posted @ 2023-12-27 10:16 Pengzt 阅读(11) 评论(0) 推荐(0) 编辑
摘要:P9032 考试题。 发现 g 的值是若干个相同的段,且段数很少,因为每次取 gcd 至少会将值域变为原来的一半。所以段数是 O(logV) 的。 然后就可以从小到大枚举左端点,然后枚举 g 的值,找的是最远的满足 \(\gcd(a_l,\d 阅读全文
posted @ 2023-12-27 10:04 Pengzt 阅读(26) 评论(0) 推荐(0) 编辑
摘要:CF1896D 如果只有单次询问其实可以双指针,但是这个难以进行拓展。 考虑找点性质。 发现 ai,v{1,2},从值域上下手。发现若存在和为 S 的方案,则一定有和为 S2 的方案,因为可以直接 211。 然后就变为找最大的和为奇/ 阅读全文
posted @ 2023-12-27 10:02 Pengzt 阅读(9) 评论(0) 推荐(0) 编辑
摘要:P4338 先考虑怎么安排崛起的先后顺序最优。 但是发现好像没有一个很好的顺序去进行崛起,并且由于 ai 的值域会很大,所以即使知道顺序应该也会难以进行维护。 转换一下方向,正难则反。考虑每个点的贡献,但是颜色不同时只会算一次,所以要钦定是哪一个点造成的贡献。令当前考虑的点为 u阅读全文
posted @ 2023-12-27 10:01 Pengzt 阅读(15) 评论(0) 推荐(0) 编辑

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