길이 의 수열 의 정렬도는 이고 인 쌍 의 개수이다.
다음 연산을 정확히 번 적용한다. 인 정수 를 골라 와 을 맞바꾼다.
모든 연산 후 얻을 수 있는 정렬도의 최댓값과 이를 달성하는 연산 순서를 하나 출력하라. 최댓값만 맞아도 출력 형식에 맞는 연산 순서를 제출한 경우에 한해 부분 점수를 받을 수 있다.
각 테스트 케이스에는 소속 서브태스크의 배점이 할당된다. 최댓값과 연산 순서가 모두 올바르면 , 최댓값은 올바르지만 연산 순서가 최댓값을 달성하지 못하면 를 받는다. 최댓값이 틀리거나 연산 순서가 출력 형식에 맞지 않으면 를 받는다. 최댓값만 출력하거나 연산 개수 또는 인덱스 범위가 잘못된 경우에도 를 보장하지 않는다. 서브태스크 점수는 소속 테스트 케이스 점수의 최솟값이다.
입력은 다음과 같은 형식으로 주어진다.
첫째 줄에 정렬도의 최댓값을 출력한다. 다음 개의 줄에 번 연산에서 고른 정수 를 한 줄에 하나씩 출력한다 (, ). 가능한 답이 여러 개면 아무거나 출력한다.
첫째 줄에 과 가, 둘째 줄에 개의 정수 이 공백으로 구분되어 주어진다.
| 3 | 36 | 는 를 정렬하는 데 필요한 최소 연산 횟수 이하이다. |
| 4 | 20 | 추가적인 제약이 없다. |