해변의 조용한 마을에 사는 수희는 바닷가에서 주운 각종 조약돌을 가지고 놀곤 한다. 오늘도 수희는 개의 조약돌을 주워 모래사장에 일렬로 줄을 세웠다. 형형색색의 조약돌이 예쁘게 한 줄로 나열된 것을 보고, 수희는 인접한 조약돌 두 개의 위치를 맞바꾸기를 번 한 후, 조약돌의 순서가 어떻게 바뀌는지 궁금해졌다.
수희가 조약돌의 위치를 맞바꾸는 규칙은 단순하다. 첫 번째 조약돌부터 시작하여 오른쪽으로 이동하면서 인접한 두 개의 조약돌, 즉, 번째 조약돌과 번째 조약돌의 위치를 서로 맞바꾸어 가다가 마지막 조약돌의 위치가 바뀌게 되면 다시 처음으로 돌아와 위치 바꾸기를 계속하되 이런 위치 바꾸기 횟수를 번 한 후 조약돌이 어떤 순서로 나열되어 있는지를 알고자 한다.
예를 들어, 개의 조약돌이 있고, 수희는 위치 바꾸기를 번 하고자 한다. 편의상 각 조약돌을 부터 시작된 수로 표현할 때, 처음 일렬로 줄 선 조약돌의 순서는 라고 하자. 첫 번째 조약돌부터 시작하여 인접한 조약돌의 위치를 맞바꿀 때마다 조약돌의 순서가 어떻게 바뀌는지는 다음과 같다.
단계 | 상태 | 설명 |
---|---|---|
첫 번째와 두 번째의 위치가 맞바뀜 | ||
두 번째와 세 번째의 위치가 맞바뀜 | ||
세 번째와 네 번째의 위치가 맞바뀜 | ||
마지막 조약돌의 위치가 바뀌었으므로 첫 조약돌부터 다시 시작 | ||
첫 번째와 두 번째의 위치가 맞바뀜 | ||
두 번째와 세 번째의 위치가 맞바뀜 | ||
세 번째와 네 번째의 위치가 맞바뀜 |
개의 조약돌 순서는 처음엔 였으나, 위치 맞바꾸기를 번 한 후 조약돌의 순서는 로 바뀌었음을 알 수 있다.
처음에 수희에게 주어진 개의 조약돌 순서가 라고 할 때, 위에서 설명한 방식으로 위치 바꾸기를 번 한 후 조약돌 순서가 어떻게 바뀌는지를 찾는 프로그램을 작성하시오.
첫 줄에 조약돌의 수를 나타내는 정수 와 위치 바꾸기 횟수를 나타내는 정수 이 공백으로 구분되어 주어진다. ( )
첫 줄에 조약돌의 순서를 나타내는 정수 개를 공백으로 구분하여 출력한다.
5 7
3 4 5 2 1
7 0
1 2 3 4 5 6 7
입력 케이스들은 다음과 같은 종류로 구별되며, 한 종류의 케이스를 다 맞혀야 그 종류에 배정된 점수를 받을 수 있다.
종류 1: 43점
종류 2: 9점
종류 3: 41점
종류 4: 7점
추가적인 제한 조건이 없음.