【2025.8.20】模拟赛

T1

Trick:看到答案值域比较小的就可以考虑直接枚举答案。

设当前枚举到的答案为 \(i\),找到 \(i\) 的所有倍数,看最远的一对倍数是否距离 \(\ge k\) 就可以了。

T2

转化为每次删一个字符,有多少种不同的过程序列。

每次删除一个极长连通段的一个字符,这样删就能让删除序列和过程序列一一对应。

用区间 \(dp\) 计算,枚举该区间最后一个被删除的位置,这样两边就独立了,就可以分别计算贡献(Trick),统计该区间贡献还要乘上一个组合数。

T3

用总的距离减去额外边产生的贡献。

\(dp\)

T4

树链剖分。

Trick:每个节点记录它能到轻子树中的多少点 \(f_i\),这样就能转化为链上求和。

posted @ 2025-08-20 21:08  TimeSpacerui  阅读(6)  评论(0)    收藏  举报