문제
여러분은 졸린 눈으로 이 문제를 쳐다보는 순간에도 딴짓을 너무나도 하고 싶다.
원장님과 부원장님 그리고 조교들이 둘 다 여러분들의 모니터를 쳐다볼 수 없는 각이 조금이라도 나온다면,
여러분은 알트탭을 누르고 유튜브와 웹툰감상 그리고 미니게임을 할 것이다.
이건 택쌤과 여러분, 우리끼리의 비밀인데, 택쌤도 어릴 때 캠프에서 딴짓하다가 원장님께 여러분들처럼 혼났었다.
그때나 지금이나 화면을 돌려가면서 하던 게임이 스타크래프트인데,
우리는 스타크래프트에 나오는 많은 요소들 중에서도 미사일 터렛에 대해 이야기해볼 것이다.
미사일 터렛은 인간 종족이 외계인들의 대공 공격을 막기 위해 지은 탑의 이름이다.
이 탑은 총 n층으로 지어져 있고, 각 층은 외계인들에게 받은 공격 때문에 내구도가 떨어져 각각 부실한 상태이다.
이 상태가 지속되다보면, 부실함 때문에 결국 건물이 무너져버린다.
SCV(Space Construction Vehicle), 우주 건설 로봇, 의 운전수인 당신은 이 탑을 수리하고자 한다.
당신이 타고 있는 로봇의 모델은 조금 최신형이어서, 왼손과 오른손 양손으로 두 개의 탑을 동시에 수리할 수 있다.
그런데 로봇의 작동방식상 양쪽 탑의 같은 층을 수리할 수는 없다.
탑의 각 층별 내구도가 주어졌을 때, 서로 다른 층이면서 그 층들의 내구도의 합이 최소가 되는 경우의 최솟값을 구하여라.
예를 들면 다음과 같다.
탑 1 |
탑 2 |
3 |
6 |
1 |
7 |
4 |
8 |
2 |
9 |
탑 1의 내구도 1짜리 3층을 수리하며 동시에 탑 2의 내구도 6짜리 4층을 수리하면, 1+6=7로 최소 내구도를 가진 탑을 수리할 수 있다. 다른 어떤 경우도(예를 들어 4+6=10이다) 7을 넘지 않는다. 따라서 7을 출력한다.
입력
출력
예제
5
5 4 3 2 1
1 2 3 4 5
2