각 캠프에서 정확히 두 개의 투어가 출발하고 도착하며, 투어마다 출발 시각과 소요 시간이 정해져 있을 때, 모든 투어를 한 번씩 사용해 캠프 1로 돌아오는 가장 빠른 경로를 구한다.
어려움8그래프동적 계획법그리디구현아직 제출이 없습니다시간 제한5초메모리 제한512 MB에베레스트산 정상에 올라와 있고, 산 위에 있는 등산로를 전부 즐기고 싶다. 그런데 경험상 에베레스트산을 혼자 돌아다니는 것은 위험하다. 어두워지면 길을 잃기 때문이다. 그래서 미리 정해진 시각에 가이드와 함께 출발하는 투어만 이용하려고 한다.
산에는 캠프가 C개 있고 1번부터 C번까지 번호가 붙어 있다. 등산 투어는 2C개 있고 1번부터 2C번까지 번호가 붙어 있으며, 모두 한 방향으로만 운행한다. 각 투어는 한 캠프에서 출발해 다른 캠프에서 끝나고, 중간에 다른 캠프를 지나지 않는다. 에베레스트산은 인적이 드물어 장사가 잘되지 않는다. 각 캠프에서 출발하는 투어는 정확히 2개이고, 각 캠프에 도착하는 투어도 정확히 2개이다.
모든 투어는 매일 운행한다. 1번과 2번 투어는 1번 캠프에서 출발하고, 3번과 4번 투어는 2번 캠프에서 출발한다. 일반적으로 2i−1번 투어와 2i번 투어가 i번 캠프에서 출발한다. i번 투어는 Ei번 캠프에서 끝나고, 매일 Li시에 출발하며, 소요 시간은 정확히 Di시간이다.
지금은 0시이고, 하루의 시각은 0시부터 23시까지이다. 현재 1번 캠프에 있고, 투어를 전부 정확히 한 번씩 이용한 다음 1번 캠프로 돌아오려고 한다. 투어를 타지 않고는 캠프 사이를 이동할 수 없다. 캠프에서는 0시간을 포함해 원하는 만큼 기다릴 수 있지만, 투어는 출발하는 시각에만 탈 수 있다.
일정표를 살펴보니 목표를 이루는 방법이 분명히 있다. 이제 최대한 빨리 끝내고 싶다. 경로를 가장 좋게 짰을 때 투어를 모두 마치는 데 몇 시간이 걸리는지 구하라.
첫 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스의 첫 줄에는 캠프의 개수 C가 주어진다. 이어서 2C개의 줄이 주어진다. 그중 1부터 세어 i번째 줄은 ⌊(i+1)/2⌋번 캠프에서 출발하는 투어 하나를 나타내고, 세 정수 Ei, Li, Di로 이루어진다. 이 형식 덕분에 각 캠프에서 출발하는 투어는 정확히 2개가 된다.
제한
각 테스트 케이스마다 Case #x: y 형식으로 한 줄씩 출력한다. x는 1부터 시작하는 테스트 케이스 번호이고, y는 목표를 이루는 데 걸리는 최소 시간이다.
첫 번째 테스트 케이스의 최적 계획은 다음과 같다.
이렇게 하면 1일 8시간, 즉 32시간이 걸린다. 다른 계획은 모두 이보다 오래 걸린다.
두 번째 테스트 케이스에서는 투어가 전부 같은 시각에 출발하고 소요 시간도 같다. 투어 하나를 마치면 곧바로 다음 투어를 탈 수 있다. 입력에 나온 순서대로 투어에 1번부터 8번까지 번호를 붙이면, 최적 계획 중 하나는 1, 5, 4, 7, 6, 2, 3, 8이다.