CF1896E Permutation Sorting 题解

link T2です

nn 个人编号 1n1 \dots n,家编号 1n1 \dots n 顺时针围成圈。
初始时编号为 aia_i 的人位于家 ii 的位置。

每轮,令所有未回家的人按顺时针排为 b1,b2,,bkb_1,b_2,\dots,b_k,令 bjb_j 移动到 bjmodk+1b_{j\bmod k+1} 的位置。如图所示。

求每个人第一次回到家所需的轮数。


这题不是模拟题。

这题其实是针对人的。

考虑在圆上每个人需要从 ss 走到 tt,在圆上画出这个弧。

那么这个人走的轮数应该为:弧长减去其包含的弧的数量。

为什么?

考虑一个人 ii,考虑某个人 jj 能使 ii 行走的距离变短的条件。

  1. sj>sis_j>s_i。因为如果 sj<sis_j<s_i,那么 jj 时刻都在 ii 的身后,不能使 ii 距离变短。

  2. tj<tit_j<t_i。因为如果 tj>tit_j>t_i,假如 jjii 早到,那也是在 tit_i 之外了,不会出现在 ii 的路径中。

    假如 jjii 晚到,那更不可能了。

那么断环为链后就是简单的二维数点。

sub


CF1896E Permutation Sorting 题解
https://formu1-github.github.io/Hexo-blog/2025/10/21/CF1896E-Permutation-Sorting-题解/
作者
Formu1
发布于
2025年10月21日
许可协议