#B1281. 空位循环移动

空位循环移动

【题目描述】

给定一个长度为 nn 的排列,元素取值为 00 到 n−1n-1。

其中 00 表示空位。

第 11 秒,元素 11 移动到当前 00 所在的位置,元素 11 原来的位置变为新的 00。

第 22 秒,元素 22 按同样规则移动到当前 00 所在的位置。

依次类推,第 n−1n-1 秒移动元素 n−1n-1,第 nn 秒再次移动元素 11,之后按同样规律循环。

请输出经过 mm 秒后的序列。


【输入描述】

第一行输入两个整数 n,mn,m。

第二行输入排列 a1,…,ana_1,\ldots,a_n。

保证:

  • 2≤n≤1052\le n\le 10^5;
  • 0≤m≤10180\le m\le 10^{18};
  • aa 是 00 到 n−1n-1 的排列。

【输出描述】

输出一行 nn 个整数,表示经过 mm 秒后的序列。


【样例 1】

【样例 1 输入】

5 4
0 2 1 3 4

【样例 1 输出】

1 3 2 4 0

【样例 1 解释】

前 44 秒依次移动元素 1,2,3,41,2,3,4 到当前空位,最终空位在最后一个位置。


【样例 2】

【样例 2 输入】

6 7
5 0 4 1 3 2

【样例 2 输出】

1 2 5 0 4 3

【样例 3】

【样例 3 输入】

8 13
7 0 5 1 6 2 4 3

【样例 3 输出】

1 2 0 3 7 4 6 5