인맥 쌓기
면접 대비시간 제한2초메모리 제한512 MB
각 사람은 Kevin의 현재 연결 수가 A_i 이상이면 무료로, 아니면 B_i 포인트를 내면 연결된다. 모든 사람과 연결하는 최소 포인트 합을 구한다.
문제
케빈은 어느 커뮤니티에서 인맥을 쌓으려고 한다. 아직 아무와도 연결되어 있지 않지만, 연결할 가치가 있다고 본 사람 명을 번부터 번까지 정해 두었다. 목표는 이 명 모두와 연결되는 것이다.
이 커뮤니티에서 외부인과 친구를 맺어 주는 사람은 드물다. 명은 누구를 외부인으로 볼지 판단하는 기준이 서로 조금씩 다르다. 번 사람은 케빈이 커뮤니티 안에서 이미 명 이상과 연결되어 있으면 친구가 되어 준다. 연결이 모자라더라도 케빈이 인터넷 포인트 를 주면 친구가 되어 준다.
케빈은 인터넷 포인트를 아끼고 싶다. 명 모두와 연결하면서 주는 포인트의 합을 최소로 만들어라.
입력
첫째 줄에 정수 이 주어진다 ().
다음 개 줄 중 번째 줄에 정수 와 가 주어진다 (, , ).
출력
케빈이 주어야 하는 인터넷 포인트의 최솟값을 한 줄에 출력한다.
힌트
첫 번째 예제에서 케빈은 번 사람과 바로 연결하고, 그 연결로 번 사람과도 연결한다. 번 사람과 번 사람은 연결이 모자라 바로 연결할 수 없으므로, 번 사람에게 포인트 을 주어 연결을 개로 늘린 다음 번 사람과 연결한다.
두 번째 예제에서는 포인트를 하나도 주지 않고 모두와 연결할 수 있다.
세 번째 예제에서 케빈은 번 사람과 먼저 연결하고, 번 사람에게 포인트 을 주어 연결한 뒤 번 사람과 연결한다.