专栏文章

题解:P12668 「TFXOI Round 2」命中注定的抉择

P12668题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@mip60t2p
此快照首次捕获于
2025/12/03 06:44
3 个月前
此快照最后确认于
2025/12/03 06:44
3 个月前
查看原文

解题思路

首先根据公式 ai=(ai1d)xa_i = (a_{i-1} - d) ^ x 计算每一层的盒子数,注意从第二层开始计算。使用 opop 表示状态。然后逐层处理:若 op=1op=1:计算全黑数量 ot=min(ai1,A)ot = \min(a_i-1, A)。令 l=Aotl = A - otsl=sotsl = s - ot,若 l=0l = 0:则剩余全白,则 s=ais = a_iA=otA = ot。若 l=sll = sl:则剩余全黑,则 s=ais = a_iA=aiA = a_i。若 op=2op=2:计算全黑数 ot=min(ai1,s1)ot = \min(a_i-1, s-1)。接下来可知剩余节点数 t=(s1)ott = (s-1) - ot。然后更新两种节点都可能存在的概率 v=(t+v)×(t+1)1v = (t + v) \times (t+1)^{-1}。 最后处理完所有层后,根据最终状态计算答案:
  • op=1op=1,概率为 A×s1A \times s^{-1}
  • op=2op=2,概率为 ((s1)+v)×s1((s-1) + v) \times s^{-1}

代码

用费马小定理求逆元,代码就不放了(怕小鞋神抄)。初始复杂度 O(logmod×k)O(\log_{} \bmod\times k),用 map 优化可以防止 TLE。

评论

0 条评论,欢迎与作者交流。

正在加载评论...