原题链接 太坑了我谔谔 简要题意: 求一个排列的多少次幂能达到另一个排列.排列的幂定义见题.(其实不是新定义的,本来就是这么乘的) 很显然,这不像快速幂那样可以结合律. 既然这样,就从图入手. 将 \(i\) 和 \(a_i\) 连边. 此时图会形成若干个环,对每个环分别操作.下面讲一个环的操作. 显然,对于一个环: 对于 \(1\) 这个点,\(k\) 次幂就是在环上走 \(k\) 步. 由于一个点的入度和出度都是 \(1\),所以不会有重叠的环,因此是单向的. 所以,这题成了:在环上走很多步…