문제
마을에는
각 도로는 두 개의 서로 다른 교차로를 양방향으로 연결한다. 도로
이 도로에는
지나는 마을의 교차로를 이동하는 로봇을 개발했다. 이 로봇에게 도로의 색을 지시하면 로봇은 지정된 색의 도로를 통과하여 인접한 교차로로 이동한다.
다만, 로봇이 현재 있는 교차로로 이어진 길 가운데, 지시된 색의 도로가
당신의 목적은 현재 교차로
다만, 현재의 도로의 색으로는 그것이 불가능 할 수도 있기 때문에, 몇 개의 도로의 색을 바꾸는 것으로, 로봇을 교차점
교차로와 도로 정보가 주어지면 필요한 금액의 최솟값을 찾는 프로그램을 작성하시오.
단, 도로의 색을 어떻게 바꾸어도 로봇을 교차로
입력
입력은 다음 형식으로 표준 입력에서 제공된다. 입력 된 모든 값은 정수다.
[제한]
•
•
•
•
•
•
출력
표준 출력에 필요한 금액의 최솟값을 한 줄로 출력하라.
단, 도로의 색을 어떻게 바꾸어도 로봇을 교차로
부분문제
번호 | 점수 | 조건 |
---|---|---|
#1 | 34점 | |
#2 | 24점 | |
#3 | 42점 | 추가 제약이 없다. |
예제1
46
1 4 4 4
3 4 1 3
1 3 4 4
2 4 3 1
2 3 3 2
1 2 4 2
3
1 원으로 도로 4를 색 3에서 색 4로 바꾸고, 2 원으로 도로 6을 색 4에서 색 2로 바꾼다. (총 3원)
그 결과, 교차점 1에 있는 로봇에 색 2를 지시함으로써 로봇을 교차점 2로 이동 시킬 수 있다. 이어서 로봇에 색 4를 지시함으로써 로봇을 교차점 4로 이동 시킬 수 있다.
2 원 이하의 금액으로 로봇을 교차점 4로 이동 시키는 것은 불가능하기 때문에 3을 출력한다.
예제2
52
1 4 1 2
3 5 1 4
-1
예제3
1321
7 10 4 4
3 6 4 7
8 10 4 5
3 9 2 5
1 4 4 5
2 6 4 2
3 11 2 2
3 8 16 2
8 11 16 1
6 10 4 14
6 8 16 6
9 12 16 5
5 13 4 6
1 12 4 7
2 4 4 18
2 9 4 10
2 12 4 6
10 13 4 28
5 7 2 5
5 11 2 16
7 13 4 20
7