
X Olympiad in Informatics 2002/2003

Problem: Shuffle

Author: Pawel Parys

Byteasar has a pack of n cards that he likes to shuffle. The
positions of cards are numbered from 1 to n. Byteasar has
acquired such a skill in shuffling that each time he obtains the same
arrangement, i.e. a card from the kth position
(1 <= k <= n) always goes to
the same a_{k}th position. We denote by
b_{k} the position of the kth card
(i.e. the card initially placed at the kth position) after
Byteasar repeated shuffling l times.
Task
Write a program which:
 reads from the standard input the numbers n and l
and the sequence of numbers (b_{k}),
 determines the sequence of numbers (a_{k}),
 writes that sequence to the standard output.
Input
In the first line of the standard input there are two positive
integers n and l
(1 <= n, l <= 1000000).
In the consecutive n lines there are successive elements of
the sequence (b_{k}), one per line. In the
(k + 1)st line there is a positive integer
b_{k}: the final position of the card from the
kth position, 1 <= b_{k} <= n.
Output
Your program should write to the standard output n integers:
successive elements of the sequence (a_{k}), one
per line. In the kth line there should be one number
a_{k}: the position of the card from the
kth position after a single shuffle. You may assume that for
the test data there always exist the desired sequence
(a_{k}). If there are many such sequences your
program should write one of them (arbitrary).
Example
For the following input data:
5 2
1
2
5
3
4
a correct answer is in the following output:
1
2
4
5
3
or:
2
1
4
5
3
Print friendly version
