도시 관광
시간 제한2초메모리 제한512 MB
1번 도시에서 출발해 모든 도시를 한 번씩 방문하고 모든 교통수단을 한 번씩 사용하는 순회 경로의 최소 시간과 최대 시간을 구합니다.
문제
Albert는 방학 동안 개의 도시를 방문할 계획이다. 편의상 도시에는 1번부터 번까지 번호가 붙어 있다. 개의 도시는 기차, 비행기, 유람선, 버스 등 여러 교통수단으로 연결되어 있다. 교통수단도 개가 있으며, 편의상 1번부터 번까지 번호가 붙어 있다.
는 도시 에서 도시 로 번째 교통수단을 타고 이동할 때 걸리는 시간이다. 이 값이 0이면 해당 교통수단으로는 에서 로 이동할 수 없다. 항상 이다.
예를 들어 이고, , , 이라 하자.
- 이므로 1번 교통수단으로 도시 1에서 도시 2로 가면 1 단위 시간이 걸린다.
- 이므로 2번 교통수단으로 도시 3에서 도시 1로 가면 2 단위 시간이 걸린다.
- 이므로 3번 교통수단으로 도시 2에서 도시 3으로 가면 4 단위 시간이 걸린다.
여러 교통수단과 일정을 알아보던 Albert는 1번 도시에서 출발해 각 교통수단을 정확히 한 번씩 이용하고, 각 도시를 정확히 한 번씩 방문한 뒤 1번 도시로 돌아오는 방법 중 가장 적게 걸리는 경우와 가장 오래 걸리는 경우를 알고 싶어 한다.
위 예제에서 도시 1 -> 도시 2 -> 도시 3 -> 도시 1로 이동하는 방법을 생각해 보자.
- 교통수단을 1, 2, 3 순서로 쓰면 단위 시간이 걸린다.
- 교통수단을 1, 3, 2 순서로 쓰면 단위 시간이 걸린다. 이 예제에서 가장 적게 걸리는 방법이다.
- 교통수단을 2, 1, 3 순서로 쓰면 단위 시간이 걸린다. 이 예제에서 가장 오래 걸리는 방법이다.
- 그 밖의 순서로도 각 교통수단을 한 번씩 이용하고 각 도시를 한 번씩 방문해 돌아올 수 있다.
위 예제의 답은 7과 14이다. 정수 과 3차원 배열 가 주어질 때, 위 조건을 만족하며 관광할 때 걸리는 최소 시간과 최대 시간을 구하라.
입력
첫 줄에 테스트 케이스의 수 가 주어진다.
각 테스트 케이스의 첫 줄에는 이 주어진다. 이어서 개의 줄에 각 줄마다 공백으로 구분된 정수 개가 주어진다. 처음 개의 줄은 1번 교통수단의 이며, 첫 줄은 , 다음 줄은 인 경우이다. 그다음 개의 줄은 2번 교통수단의 값이며, 이런 식으로 번 교통수단까지 순서대로 주어진다.
출력
각 테스트 케이스마다 최소 시간과 최대 시간을 공백으로 구분해 한 줄에 출력한다. 조건을 만족하는 방법이 없으면 "0 0"을 출력한다.
제한
- 모든 에 대해
- 모든 에 대해 가 보장된다.
- 모든 에 대해 이 보장된다.