SWAP-C Sort
시간 제한2초메모리 제한1024 MB
모든 서로 다른 두 위치의 원소를 정확히 한 번씩 교환해서 순열을 정렬할 수 있는지 판별하고, 가능하면 교환 순서 하나를 출력한다.
문제
길이 의 순열 이 주어진다. 순열 에는 이상 이하의 정수가 정확히 한 번씩 등장한다.
인 모든 쌍 에 대해 와 를 교환하는 동작을 정확히 한 번씩, 총 번의 동작을 수행하여 를 정렬할 수 있는지 판별하고, 가능하다면 그러한 방법을 아무거나 하나 출력하시오.
입력
첫 번째 줄에는 순열의 길이 이 주어진다. ()
두 번째 줄에는 의 값이 순서대로 공백으로 구분되어 주어진다.
출력
첫 번째 줄에 문제의 조건에 맞게 를 정렬할 수 있으면 1, 아니면 0을 출력한다.
정렬할 수 있는 경우, 그러한 번의 동작을 순서대로 한 줄에 하나씩 출력한다. 번째 원소와 번째 원소를 교환할 때, 와 를 공백으로 구분하여 출력한다. 와 의 대소 관계는 상관 없다.