814 - 3
시간 제한4.814초메모리 제한814 MB
무작위로 주어진 8000개 도시를 140명의 세일즈맨에게 나누고 각자 닫힌 순회 경로를 정해, 가장 긴 경로 길이를 최소화한다.
문제
최근 불어온 TSP(Traveling Salesman Problem)의 열기에 힘입어 다음과 같은 문제를 만들었다:
2차원 평면 위에 개의 도시가 있다. 번째 도시의 좌표는 (, )로 나타난다.
회사는 개의 도시를 명의 외판원에게 분배한다. 번째 외판원이 받은 도시의 개수를 라고 하자.
각 외판원은 받은 도시를 순회할 순서 , , , 를 정하여, 부터 순서대로 모든 도시를 돌고 다시 로 되돌아온다. 이때, 각 외판원이 이동하는 거리의 최댓값을 최소화하라.
번 도시와 번 도시 사이의 거리 이며, 문제는 결국 를 최소화하는 것이다. 편의상, 이다.
입력
첫 번째 줄에 도시의 개수 과 외판원의 수 가 주어진다.
다음 개의 줄의 번째 줄에는 번 도시의 좌표를 나타내는 두 정수 ()가 주어진다.
주어지는 는 주어진 범위 내의 정수 중 하나를 모두 동일한 확률로 선택하여 만들어진다.
채점에는 총 50개의 입력이 사용되며, 총점은 각 점수의 합이다.
출력
개의 줄에 걸쳐 답을 출력해야 하며, 번째 줄에는 , , , , 가 순서대로 출력되어야 한다.
출력에서 모든 외판원은 적어도 하나의 도시를 분배받아야 하고, 모든 도시는 정확히 한 번씩 등장해야 한다.