배달 경로

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

수년간 기록적인 우유 생산량을 달성한 축산업자 존(Farmer John)은 이제 $N$개($1 \le N \le 100$)의 농장으로 이루어진 네트워크를 운영한다. 농장 $i$는 2차원 평면 위의 위치 $(x_i, y_i)$에 있으며, 모든 농장의 위치는 서로 다르고 $x_i$와 $y_i$는 모두 정수이다.

존은 매일 $N$개의 농장에 물자를 배달하는 경로를 계획하려 한다. 그는 농장 1에서 출발하여 농장을 번호 순서대로(농장 1 다음 농장 2, 그다음 농장 3 …) 방문하고, 농장 $N$을 방문한 뒤 다시 농장 1로 돌아온다. 존은 한 번에 북·남·동·서 중 한 방향으로 한 칸 이동할 수 있으며, 한 칸을 이동하는 데 1분이 걸린다. 또한 존은 전체 여정 동안 각 농장을 정확히 한 번씩만 방문하려 한다(물론 출발지이자 도착지인 농장 1만은 두 번 방문한다). 다시 말해, 어떤 농장에서 다른 농장으로 이동하는 도중에는 다른 농장이 있는 칸을 밟을 수 없다.

존이 전체 배달 경로를 완주하는 데 걸리는 최소 시간을 구하여라.

입력

  • 첫째 줄: 농장의 수 $N$.
  • 둘째 줄부터 $N$개의 줄: $i+1$번째 줄에는 두 정수 $x_i$와 $y_i$가 공백으로 구분되어 주어진다 ($1 \le x_i, y_i \le 10^6$).

출력

  • 첫째 줄: 존이 배달 경로를 완주하는 데 필요한 최소 시간(분). (농장 1을 제외하고) 각 농장을 정확히 한 번씩 방문하는 경로가 존재하지 않으면 $-1$을 출력한다.

힌트

첫 번째 예제에서 존은 12분 만에 배달 경로를 완주할 수 있다. 농장 1에서 농장 2까지 2분, 농장 2에서 농장 3까지 5분(농장 1을 우회), 농장 3에서 농장 4까지 3분, 마지막으로 농장 1로 돌아오는 데 2분이 걸린다.