题目描述
给定一个整数 n,表示 n 张牌,牌的编号为 1∼n
再给定一个洗牌的置换 f1,f2,⋯,fn。进行一次洗牌时,应将第 1 号位置的牌交换到第 f1 号位置,将第 i 号位置的牌交换到第 fi 号位置。保证 f 是一个 1 到 n 的排列。
一开始,牌的顺序为 1,2,⋯,n。给定一个整数 k,请输出经过 k 次洗牌后牌的顺序。
输入格式
第一行输入两个空格隔开的正整数 n,k
第二行输入 n 个空格隔开的正整数 f1,f2,⋯,fn
输出格式
输出 n 个空格隔开的整数,为洗牌后的顺序。
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% 的数据,1≤n≤100,1≤k≤1000;
- 对于 60% 的数据,1≤n≤1000,1≤k≤10000;
- 对于 100% 的数据,1≤n≤105,1≤k≤109;