#P14147. 残缺

残缺

题目描述

对于一个 0∼n−10\sim n-1 的排列 pp 和一个 x∈[0,n−1]x\in[0,n-1],每次操作时会依次发生以下两个事件:

  • x:=pxx:=p_x;
  • ∀i∈[0,n−1],pi:=(pi+1) mod n\forall i\in[0,n-1],p_i:=(p_i+1)\bmod n。

称第 ii 次操作后的 xx 为 xix_i,特别的,初始的 xx 称为 x0x_0。

现在我们有 x0=0x_0=0,请你构造一个长度为 nn 的排列 pp 满足在 n−1n-1 次操作后,∀i∈[0,n−1],∃j∈[0,n−1],xj=i\forall i\in[0,n-1],\exists j\in[0,n-1],x_j=i,即 xx 是一个排列。

可以证明一定有解。

输入格式

一个正整数,表示 nn。

输出格式

输出一行 nn 个数,表示你构造的排列 pp。

4
2 1 0 3

提示

样例解释

初始时,x=0,p=[2,1,0,3]x=0,p=[2,1,0,3]。

第一次操作后,x=2,p=[3,2,1,0]x=2,p=[3,2,1,0]。

第二次操作后,x=1,p=[0,3,2,1]x=1,p=[0,3,2,1]。

第三次操作后,x=3,p=[1,0,3,2]x=3,p=[1,0,3,2]。

数据范围

对于 30%30\% 的数据,保证 nn 为奇数。

对于 100%100\% 的数据,保证 1≤n≤1061\le n\le 10^6。