6.25 之后的联考总结——懒得挣扎的赛季末

Trick 总结和其他问题总结另开一篇文章,这里只是记录做法。

致敬机房传奇 Eltaos。

反正无论如何都是驶向那终点,不如珍惜这或许并不有趣的过程。

6.25

\(0+100+0\),rk 倒数。

这场比较好的就是考场上切掉了 T2,但是反而没有切掉 T1

事实上后面想了一下 T1 大概也会了,好像是人均题……

T1 零个题 (tree)

设树上共 \(x\) 个叶子,用 \(\frac{x}{2}\) 条路径将叶子两两相连,要求树上每条边都被覆盖过,求路径长度和的最小值。

多次询问,每次在原树上新挂一些叶子节点,总和小于 \(10^5\)

Solution: P6805 [CEOI2020] 春季大扫除

先研究静态问题,搞出一个合法连接方案,使用 P7320 「PMOI-4」可怜的团主 中 dfs 序 \(i\)\(i+frac{n}{2}\) Trick 即可。

然后发现每条边如果覆盖次数 \(\ge3\) 就可以重新安排来 \(-2\)

然后就发现一条边被覆盖 \(1~2\) 次,而且 \(2\) 次当且仅当子树内叶子数量为偶数。

这是好维护的。

好的现在,新挂一个节点,如果挂在叶子上则没什么影响,否则则会让该点到根(注意根是重新选择的,度数必须 \(>1\))每个点新增一个叶子节点。

变成路径异或,全局求和。

树剖维护 \(O(n\log ^2n)\) 即可,注意每次询问后还原。

T2 一个题 (ynoi)

维护一个可重集,元素数量 \(\le 2\times 10^5\),元素值域 \([0,2^{30}-1]\)

支持加入,删除和有参数 \(k\) 询问:

将可重集划分为 \(k\) 个非空子集,每个子集权值为内所有元素按位与结果,划分权值为所有子集权值和,找到最大权值划分。

Solution:

先考虑 \(k=2\),此时按位贪心显然对,考虑每一位,如果全 \(0\)\(1\),平凡。

如果有 \(0\)\(1\),这一位贡献答案,当且仅当所有这一位为 \(0\) 的放在一起。

然后贪心的,它们必须放一起,故直接合并成一个数扔进去并直接加贡献。

这个过程使用 0-1 Trie 维护子树按位与结果即可 \(o(n\log^2 n)\) 快速计算。

现在 \(k>2\),发现按位贪心仍然正确,使用调整法可证明。

然后 0-1 Trie 仍然可以维护。

具体的,如果这一位为 \(1\)\(\ge k\) 个仍然可以将全部这一位为 \(0\) 的合并扔进去;如果 \(<k\) 个,一个个单选最优,递归求解剩下的问题即可。

然后新维护一下子树和就行了。

6.29

\(50+0+60\),rk 倒数。

不会 T1,不会 T2,不会 T3。

数据结构烂完了。

T1 翻转基础问题

一个值域 \([-10^9,10^9]\) 的长为 \(10^5\) 的序列,对于 \(k∈[0,n]\),求出至多改变 \(k\) 的符号时候,序列的最大前缀和。

Solution:

想象一个简单的 \(O(n^2)\) 的 DP。

然后观察每一位的最优决策点,你会发现它是有决策单调性的。

然后决策单调性分治 + 主席树求前 k 大的和即可。

T2 树上基础问题

想象我不会 DDP awa,就去世力!

图论基础问题

\(n\) 个孤立的点和 \(\binom{n}{2}\) 条还没连接的边,现在随机排列这些边,对于每一条边如果两端点有至少一个度数为 \(0\),就连上这条边。

问最后存在 \(k\) 个连通块的概率。

Solution:

想象同样存在一个简单的 \(O(n^2)\) DP,但是和本题正解没啥关系。

先二项式反演一下改成有至少 \(k\) 条增加连通块的边。

那么会变成剩下的一部分边必须在他们后面。

钦定一个这 \(k\) 条边加入的顺序后,统计每条边有多少要求在它后面的。

然后是合法树形拓扑序概率为子树倒数乘积的 Trick。

想办法推一下式子搞成双阶乘就结束了。

7.3 lxl DS round

DS round,开摆!

等到 DS 有质的飞跃再谈 DS Round 罢。

posted @ 2024-06-26 17:32  Fun_Strawberry  阅读(25)  评论(0)    收藏  举报