문제
농부 John은 자신의 소들이 넓은 들판을 무서워한다는 사실을 깨달았습니다. 이를 극복하기 위해 John은 큰 들판을 여러 개의 작은 구역으로 나누기 위해 남북 방향의 세로 울타리와 동서 방향의 가로 울타리를 건설합니다.
큰 들판은 점
그러나 John은 울타리에 문(출입구)을 설치하는 것을 완전히 잊어버려, 소들이 자신의 구역을 벗어나 들판 전체를 돌아다닐 수 없게 되었습니다. 이를 해결하기 위해 John은 인접한 구역들 사이의 울타리 일부를 완전히 제거하여, 소들이 그 틈을 통해 자유롭게 이동할 수 있도록 하려 합니다. 구체적으로, 일부 인접한 두 구역 사이에 있는 울타리의 전체 길이를 제거하여 두 구역이 연결되게 만들고자 합니다.
John의 목표는, 이렇게 선택된 인접 구역 쌍에 대해 울타리 제거 작업을 수행한 후, 모든 구역이 서로 연결되어 소들이 들판 전체를 자유롭게 돌아다닐 수 있게 하는 것입니다. 이때, 제거해야 하는 울타리 길이의 총합을 최소화하고자 합니다.
문제는, 주어진
+---+--+
| | |
+---+--+
| | |
| | |
+---+--++---+--+
| |
+---+ +
| |
| |
+---+--+입력
첫 번째 줄에 네 정수
다음
그 다음
출력
출력은 표준 출력에 한 줄로 나타내며, John이 목표를 달성하기 위해 제거해야 하는 울타리 길이의 최소 총합을 출력합니다.
(정답이 표준 32비트 정수형을 초과할 수 있으므로 64비트 정수형을 사용해야 할 수 있습니다.)
예제
15 15 5 2
2
5
10
6
4
11
3
44