AI 摘要
比赛Rating终于上涨。T1入门未总结;T2把幽魂形态减伤转为每回合max(0,Ai-k),用前缀和求长度m连续子段最大减免,总伤害减之;T3难度从J组第二跳到NOIP第二,用DP结合树状数组与前后缀预处理求解,答案模998244353;T4暂无。

超爽得吃Rating(终于加一次了QAQ)
ovo
T1 ANDORXOR
一道入门题就不总结了吧…
T2 Cataclysm Cry
这题应该也是比较简单的。
本题正解思路小总结:
- 由题意,打出幽魂形态后,连续 个回合受到的伤害变为 ,等价于减免了原本超过 的部分。
- 因此设每回合产生的减免贡献为 ,问题转化为在长度为 的序列中找出长度为 的连续子段,使其 之和最大。
- 利用前缀和 ,可以实现 计算任意区间 的减免量总和。
- 遍历所有可能的区间起点,更新并记录最大的区间减免量 。
- 最终的最小总伤害即为初始总伤害 减去最大减免量 。
T3 Oblivion
难度一下子就从J组第二题跳到了NOIP第二题。。。
难度落差是真的大啊。。。
本题正解思路小总结:
- 定义 为以第 个人作为左侧最近邪恶者的方案数,通过动态规划求解。
- 预处理出 和 数组,记录左侧最近的
L和右侧最近的R位置。 - 利用树状数组维护前缀和,通过位置 确定前驱状态集合范围。
- 利用 标记当前状态在何处失效,并用 数组延迟删除状态。
- 若当前字符为
?,则 乘 表示该位置邪恶者可在L和R中任选其一。 - 最终累加所有右侧无强制
R约束的 ,并对 取模即可得到答案。
T4 No way back
暂无