Preparando MOJI

Square Root of Permutation

2000ms 262144K

Description:

A permutation of length n is an array containing each integer from 1 to n exactly once. For example, q = [4, 5, 1, 2, 3] is a permutation. For the permutation q the square of permutation is the permutation p that p[i] = q[q[i]] for each i = 1... n. For example, the square of q = [4, 5, 1, 2, 3] is p = q2 = [2, 3, 4, 5, 1].

This problem is about the inverse operation: given the permutation p you task is to find such permutation q that q2 = p. If there are several such q find any of them.

Input:

The first line contains integer n (1 ≤ n ≤ 106) — the number of elements in permutation p.

The second line contains n distinct integers p1, p2, ..., pn (1 ≤ pi ≤ n) — the elements of permutation p.

Output:

If there is no permutation q such that q2 = p print the number "-1".

If the answer exists print it. The only line should contain n different integers qi (1 ≤ qi ≤ n) — the elements of the permutation q. If there are several solutions print any of them.

Sample Input:

4
2 1 4 3

Sample Output:

3 4 2 1

Sample Input:

4
2 1 3 4

Sample Output:

-1

Sample Input:

5
2 3 4 5 1

Sample Output:

4 5 1 2 3

Informação

Codeforces

Provedor Codeforces

Código CF612E

Tags

combinatoricsconstructive algorithmsdfs and similargraphsmath

Submetido 0

BOUA! 0

Taxa de BOUA's 0%

Datas 09/05/2023 09:03:03

Relacionados

Nada ainda