페이지를 불러오는 중…
해결한 사람
1
명
정답률
100.00
%
시간 제한
5
ms
메모리 제한
1024
MB
당신은 빵을 구워 긴 줄 위에 놓았다. 빵은 총 개이며, 번째 빵은 -좌표 에 있다. 당신은 빵들이 서로 이웃하도록, 즉 어떤 에 대해 좌표 에 놓이도록 빵들을 한데 모으고 싶다. 하지만 빵은 매우 뜨거워서 너비가 인 삽으로만 다룰 수 있다. 한 번의 동작으로 길이가 인 구간을 하나 선택하고 그 구간 안의 모든 빵을 뒤집을 수 있다. 더 구체적으로, 형태의 구간을 선택할 수 있다. -좌표가 을 만족하는 빵은 -좌표 로 이동한다.
개 빵의 위치와 수 가 주어진다. 빵들이 서로 이웃하게 되는 동작의 수열을 찾는 것이 당신의 과제이다. 최대 번의 동작을 사용할 수 있다.
당신의 풀이는 여러 테스트 케이스 그룹에 대해 테스트된다. 한 그룹의 점수를 받으려면 그 그룹의 모든 테스트 케이스를 통과해야 한다.
그룹 | 배점 | 제한
||
||
||
||
||
|| 추가 제한 없음.
첫 번째 줄에는 두 정수 와 가 주어진다 ().
두 번째 줄에는 개의 정수 가 주어진다 (). 모든 수 는 서로 다르다.
해가 존재하지 않으면 ``-1''을 출력한다.
그렇지 않으면 먼저 동작 횟수인 정수 를 한 줄에 출력한다 (). 그다음 개의 줄을 출력하며, 번째 줄에는 정수 를 출력한다.
이는 번째 동작에서 구간 을 뒤집는다는 뜻이다. 수 는 거의 (정수는 를 만족해야 하며, 그렇지 않으면 오답을 받는다.) 어떤 정수든 될 수 있으며, 음수도 포함된다. 모든 동작을 수행한 뒤 빵들이 서로 이웃하면 해는 정답으로 판정된다. 빵들의 순서는 중요하지 않다.
4 4
1 7 2 8
2
1
5
4 5
1 2 3 5
-1
Programmeringsolympiaden
로그인 상태를 확인하는 중입니다.