给定一个 n,初始有 n! 个 n 的排列 S1,S2,…,Sn!。给出 m 次询问,每次两个数 a 和 b(1≤a<b≤n),对于任意一个序列 S,如果 Sa>Sb,那么交换 Sa 和 Sb,操作结束后输出此时已经排好序的序列个数。
本题强制在线,每次输入两个数 x, y,上一次的答案为 last,初始为 1。
数据以如下方式生成。
- ci = ((xi +last) mod n) + 1。
- $ d_i\ =\ ((y_i\ + last\ \times\ 2)\ \bmod\ n)\ +\ 1$。
- ai = min(ci, di)。
- bi = max(ci, di)。