#1773. 洗牌

洗牌

题目描述

给定一个整数 nn,表示 nn 张牌,牌的编号为 1n1\sim n

再给定一个洗牌的置换 f1,f2,,fnf_1,f_2,\cdots,f_n。进行一次洗牌时,应将第 11 号位置的牌交换到第 f1f_1 号位置,将第 ii 号位置的牌交换到第 fif_i 号位置。保证 ff 是一个 11nn 的排列。

一开始,牌的顺序为 1,2,,n1,2,\cdots,n。给定一个整数 kk,请输出经过 kk 次洗牌后牌的顺序。

输入格式

第一行输入两个空格隔开的正整数 n,kn,k

第二行输入 nn 个空格隔开的正整数 f1,f2,,fnf_1,f_2,\cdots,f_n

输出格式

输出 nn 个空格隔开的整数,为洗牌后的顺序。

4 3
4 1 2 3
4 1 2 3
3 100000
1 2 3
1 2 3

样例 1 解释

  • 初始:1 2 3 4
  • 第一次洗牌:2 3 4 1
  • 第二次洗牌:3 4 1 2
  • 第三次洗牌:4 1 2 3

数据范围

  • 对于 30%30\% 的数据,1n1001\leq n \leq 1001k10001\leq k \leq 1000
  • 对于 60%60\% 的数据,1n10001\leq n \leq 10001k100001\leq k \leq 10000
  • 对于 100%100\% 的数据,1n1051\leq n \leq 10^51k1091\leq k \leq 10^9