ARC137C 题解

blog。很牛的题,想了差不多一个小时。

经典结论

此处 \(S\to T\) 表示状态 \(S\) 可以变成状态 \(T\)

\(\textbf{Conclusion: }\)\(\forall S\to T\to P\) 都有 \(S\to P\),则 \(S\) 为必胜态。(用中文讲:一个状态能到达它所能到达的状态所能到达的状态,则这个状态为必胜态。)

\(\textbf{Prove: }\)\(T\) 为必败态,则 \(S\) 为必胜态。若 \(T\) 为必胜态,则必定 \(\exists P\) 是必败态,\(\because S\to P\)\(\therefore S\) 是必胜态(它能到达一个必败态)。

思路

考虑最大值 \(p\) 与次大值 \(q\)。先手操作 \(p\),只要操作后仍然有 \(p>q\),由「经典结论」,先手必胜。所以 \(q+1<p\) 时先手必胜。

另一种情况是 \(q+1=p\),由「\(q+1<p\) 时先手必胜」这个结论,双方每次操作后必定是保持 \(q+1=p\),所以只会将 \(p\) 移动到下一个间隔处。

那么这种情况下,间隔数奇偶性决定了先后手谁必胜。做完了。

code,时间复杂度瓶颈在排序。

posted @ 2023-10-29 21:26  liangbowen  阅读(21)  评论(0编辑  收藏  举报