프로그램 명: coci_poslozi(special judge)
제한시간: 2 초

//sj 가 아직

"정렬" 이라는 유명한 플래시게임이 있다.

"정렬" 게임에서 플레이어는 1 부터 N 까지의 임의로 나열된 순열을 받으며 허용되는 스왑(swap)의 리스트를 받는다. 그리고 플레이어는 허용되는 스왑들을 이용해서 초기의 순열을 1 부터 N 까지 순서로 다시 만들어야 한다. 최고점을 받기 위해서는 스왑을 최대한 적게 사용해야 한다.

사람은 그걸 못하겠지만 프로그램은 할 수 있으니 프로그램을 작성하여 플레이어를 도와주자.

입력

허용된 스왑 중에는 중복된 스왑이 주어지지 않는다.

출력

입출력 예

input

2 1
2 1
1 2

output

1
1

input

3 2
2 1 3
1 3
2 3

output

3
2
1
2

input

5 5 
1 2 3 4 5 
1 5 
2 5 
1 4 
1 1 
3 5 

output

0

“Arrange” is a planetary popular Flash game. In “Arrange” the player is given a permutation of numbers 1 to N and a list of allowed swaps. He then has to perform a sequence of swaps that transforms the initial permutation back to the ordered sequence 1,2,3,4,5...N.

In order to break the high score list, you need to perform the minimal amount of swaps possible. You can't do that, but you can write a program that does it for you!

입력

Note: the test data shall be such that the solution, not necessarily unique, will always exist.

출력

입출력 예

input

2 1
2 1
1 2

output

1
1

input

3 2
2 1 3
1 3
2 3

output

3
2
1
2

input

5 5 
1 2 3 4 5 
1 5 
2 5 
1 4 
1 1 
3 5 

output

0
출처:COCI 2009/2010 contest2 5/6
번역:KangJ
▒ 대회 제한시간은 1.5 초 입니다.
[질/답] [제출 현황] [푼 후(0)]
[ 채 점 ] [홈으로]  [뒤 로]