2024.8.9 鲜花

推歌:早安大森林

模拟赛乱写(你猜我欠了多少。

  1. 嘉然登场

    确实是好玩的题。

    考虑先将其分成两组,一组 <k2,一组 k2

    考虑使一个数在填的时候使所以剩余数都可以填它旁边,或都不可以。

    可以将每个 <k2 的数对应其最小可以放的 k2 的数,然后从大往小放 k2 的数,每次放完后将所有与它对应的数都一块放了。

  2. Clannad

    考虑其本质是求虚树大小。

    考虑一个点在虚树内有两个限制:

    1. u 子树内存在至少一个属于序列区间的点。

    2. u 子树外其他点和 u 构成的子树内至少存在一个属于序列区间的点。

    发现满足第一个限制但不满足第二个限制是好求的,直接求区间 lca 即可。

    考虑用满足 1 的减掉满足 1 且不满足 2 的点。

    对于满足 1 的点,考虑离线,扫描线可以维护右端点。新加一个点,就对其到根的路径染上当前颜色,最后统计颜色在 [l,r] 之间的点个数即可。

    染色可以珂朵莉,统计用树状数组就行。

  3. 修水管

    这是逆天状态的 dp 和逆天读题

    考虑求 r 轮中第 i 段被修复的概率。

    考虑转移,发现其之和有几次水流到过有关,所以设 dpi,j 表示前 i 个位置,在 r 轮中修复了 j 次的期望。

    dp 枚举当前是否修过转移,然后就都可以直接推了。

  4. 小孩召开法 3

    trick 猫树分治。

    考虑类似猫树,每次对分割点左右进行处理,查询可以直接合并。

    发现空间不太够,可以将其离线,对在哪一层排序,只维护一层信息即可。

  5. 桥桥

    记一下 Kaguya 发现的将 log 换成 α 的做法。

    首先对询问分块,每块先将这块之前的修改改掉,对于块内的修改,每次查询时暴力跑一遍,在撤销即可。

    用可撤销并查集维护,可以干到 nnlogn

    考虑前缀的时间排序,可以直接归并,将 logn 乘在 n 上,调整块长可以做到 nnlogn

    考虑整一下并查集,发现可以路径压缩,对于块内的询问,最多一次完全展开是 n 最多 n 次,不会有复杂度问题。而加边查询的 log 就变成了 α,复杂度 nnα(n)

    但因为常数问题,其实很难跑过带 log 做法。

  6. 春色春恋春熙风

    树上启发式合并板子。

    考虑每次数组维护重儿子信息,轻儿子跑暴力即可。

    线段树合并在 CF 上也能过,学校 OJ 跑不过去。

  7. 雪色雪花雪余痕

    发现其就是维护凸壳。

    考虑凸壳性质,其差分序列不降,可以直接跑 dp

    dpi,j 表示用 i 个正数,和为 j,因为差分不降,所以最少是 k=1ik=jim 级的。

    因为有非负限制,考虑枚举最小值的最左边位置,钦定最小值为 0,最后在平移。

    左边长度是定值,右边是一个 k 的限制,用前缀和做掉,平移也可以用前缀和。

    时空都带根号,用撤销空间可以省掉根号。

没有鲜花可以不写,不要写这种东西脏了我的眼

一张穗?

posted @   5k_sync_closer  阅读(61)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示