시간 제한
메모리 제한
시간 제한
1초
메모리 제한
128 MB
상근이는 트럭 운송 회사를 운영한다. 회사에는 트럭이 N대 있으며, 모든 트럭은 하나의 고속도로를 이용해 이동한다.
이 고속도로에는 1번부터 1,000,000번까지 번호가 붙은 나들목이 있다. 트럭이 고속도로에 들어갈 때는 들어온 나들목 번호가 적힌 티켓을 받는다. 나갈 때 요금소에 이 티켓을 내면, 티켓에 적힌 번호와 실제로 나가는 나들목 번호의 차이만큼 요금을 낸다.
상근이는 요금을 줄이기 위해 운전사들이 고속도로 위에서 서로 티켓을 교환하게 하려고 한다. 두 트럭의 이동 구간이 겹치지 않아도 티켓을 교환할 수 있으며, 같은 티켓을 여러 번 교환해도 된다. 따라서 최종적으로 각 트럭이 어떤 티켓을 가지고 나갈지만 정하면 된다.
단, 의심을 피하기 위해 티켓에 적힌 나들목 번호와 같은 번호의 나들목으로는 나갈 수 없다.
모든 티켓을 적절히 배정했을 때, 회사가 내야 하는 요금 합의 최솟값을 구하시오.
첫째 줄에 트럭의 수 N이 주어진다. (1 <= N <= 100,000)
다음 N개 줄에는 각 트럭이 들어온 나들목 번호와 나가야 하는 나들목 번호가 공백으로 구분되어 주어진다.
모든 나들목 번호는 1 이상 1,000,000 이하의 자연수이다. 서로 다른 두 트럭이 같은 번호의 나들목에서 들어오는 경우는 없고, 같은 번호의 나들목으로 나가는 경우도 없다.
회사가 내야 하는 고속도로 이용 요금 합의 최솟값을 출력한다.
정답이 32비트 정수 범위를 넘을 수 있으므로 64비트 정수형을 사용해야 한다.