题目描述
给定一个每个元素都在 1 到 N 之间的长度为 N 的序列 X 和一个长度为 N 的序列 A。请输出对序列 A 执行以下操作 K 次后的结果:
- 构造一个新的序列 B,其中 Bi=AXi,然后将 B 设为新的 A。
输入格式
输入以以下格式从标准输入给出:
N K X1 X2 … XN A1 A2 … AN
输出格式
设操作后的 A 为 A′,请以以下格式输出:
A1′ A2′ … AN′
样例 1
输入
7 3
5 2 6 3 1 4 6
1 2 3 5 7 9 11
输出
7 2 3 5 1 9 3
样例 2
输入
4 0
3 4 1 2
4 3 2 1
输出
4 3 2 1
样例 3
输入
9 1000000000000000000
3 7 8 5 9 3 7 4 2
9 9 8 2 4 4 3 5 3
输出
3 3 3 3 3 3 3 3 3
说明/提示
制约条件
- 所有输入都是整数。
- 1≤N≤2×105
- 0≤K≤1018
- 1≤Xi≤N
- 1≤Ai≤2×105
示例解释 1
在这个例子中,X=(5,2,6,3,1,4,6),操作前的序列 A=(1,2,3,5,7,9,11)。
- 执行一次操作后,序列变为 (7,2,9,3,1,5,9)。
- 执行两次操作后,序列变为 (1,2,5,9,7,3,5)。
- 执行三次操作后,序列变为 (7,2,3,5,1,9,3)。
示例解释 2
也可能不会执行任何操作。