2025 --炼石计划-- 11 月 13 日 --NOIP 模拟赛 #20

2025 --炼石计划-- 11 月 13 日 --NOIP 模拟赛 #20

T1 邻间的骰子之舞

签到题

显然答案具有二分性,考虑二分答案。注意到每次有意义的复制会使长度翻倍,即最多复制 \(60\) 次,而粘贴则类似一个乘积的形式,check 时可以枚举复制次数,此时则能知道粘贴次数,由和定平分时积最大得到最大长度。

时间复杂度 \(O(\log^3 n)\)

T2 星海浮沉录

签到题

注意到每个颜色的贡献只有最大空段,用 set 和线段树维护即可。

时间复杂度 \(O(n\log n)\)

T3 勾指起誓

概率DP,计数题,FMT,sosDP

这个东西直接做( 无论是 DP 还是直接计数 )都非常困难,因为有一些信息很难刻画。

考虑简化一些信息,可以使用概率 DP ,即每次等概率选择一道题进行回答。

这样就能刻画出一种不用考虑全部都能回答上问题,以及全都回答不上问题的情况了。

考虑状压 DP,朴素实现至多到 \(O(3^m)\)

写出转移式子,考虑优化。

\(f_S\) 表示还剩下 \(S\) 这个集合中的人的概率,\(tot_S\) 表示与 \(S\) 有交且不包含 \(S\) 问题的数量,\(c_T\) 表示问题集合等于 \(T\) 的数量。

则有转移

\[f_S=\sum_{A\bigcap B=S}\frac{f_A}{tot_A}c_B \]

先暂时不考虑 \(tot_S,c_B\) 怎么求。

回到转移,注意到转移是与卷积的形式,可以使用 \(FMT\) 或者 \(FWT\) 优化,但是自己卷自己,并且最初态是 \(f_U=1\) ,所以得按每个 \(popcount\) 从大到小卷一次( 因为这样才能保证每个值的前继状态是已知的 )。

所以时间复杂度瓶颈在 \(m\) 次卷积,为 \(O(m^22^m)\)

jijidawang 说离线卷积能优化至 \(O(m2^m)\)

T4 第八交响曲

双调排序

xrlong 的双调排序详细揭秘

p

posted @ 2024-11-14 21:41  Qyun  阅读(47)  评论(0编辑  收藏  举报