BOJ 12549 Travel Plan (Small)
BOJ 12549 Travel Plan (Small)
문제 내용
일직선 위에 개의 점이 있습니다. 각 점의 좌표는 정수입니다. 당신은 1번 점 위에 있으며, 1번 점의 위치는 0입니다.
당신은 다른 모든 점을 한 번씩 방문하고 1번 점으로 돌아오려고 합니다. 어떤 점을 방문하지 않고 지나칠 수도 있으나, 방향 전환(앞-뒤 또는 뒤-앞)은 어떤 점을 방문했을 때만 가능합니다.
그러한 방법들 중 총 이동 거리가 이하이면서 가능한 한 최대인 것의 이동 거리를 구하세요.
입력
첫 줄에는 테스트 케이스의 개수 가 주어집니다. ()
각 테스트 케이스에 대해, 첫 줄에는 점의 개수 이, 두 번째 줄에는 각 점의 위치 가 주어집니다. 모든 점의 위치는 서로 다르며, 은 0입니다. (, )
세 번째 줄에는 거리 제한을 나타내는 값 가 주어집니다. ()
출력
각 테스트 케이스에 대해 Case #{테스트 케이스 번호}: {문제의 정답}의 형식으로 출력합니다. 총 이동 거리가 이하인 경로가 단 하나도 없다면 NO SOLUTION을 정답 대신 출력합니다.
문제 풀이
스포일러
첫 위치는 0으로 고정이므로, 방문 순서를 선택하는 방법은 총 가지가 있습니다. 이 모든 경우에 대해 거리를 계산하여 그 중 최적인 것을 출력하면 됩니다.
Last updated on