RiseOJ는 solved.ac와 제휴 관계가 없습니다. 티어 아이콘 © solved.ac. solved.ac
포럼
COCI00173

Dugovi

Platinum III 플래티넘 III
난이도
1s
시간 제한
32MB
메모리 제한
0
맞았습니다!!
0
제출 수
0.0%
정답률
레이팅

의견: 0

설명

In a little town called Križ live \(N\) people. Each of them has borrowed some money from exactly one other inhabitant. Now the time has come to pay back all the debts, but the problem is that everybody has spent all of their money!

The mayor of Križ has decided to solve this problem. The town will give money to a few people so that they can pay back their debts. When some people get their money back, a chain reaction is started — for example: person \(A\) gets money from the city. Person \(A\) uses that money to pay the debt toward person \(B\). Person \(B\) then uses that money to pay the debt towards person \(C\), etc. If person \(B\) didn't have enough money to pay back the debt, they wait until they get enough. If they have more than enough money, person \(B\) will keep what is left after payback.

Another example: if two people live in Križ, and they owe \$$ 100$ to each other, the town will give \ $$100$ to one of them so they can pay back the debt to the other one.

Your task is to calculate the minimum total amount of money the town has to give to some subset of the inhabitants so that after the payback protocol described above all debts are paid.

제약
입력 형식

The first line of input contains one integer \(N\) (\(2 \le N \le 200\,000\)), the number of inhabitants of Križ. They are numbered from \(1\) to \(N\).

The following \(N\) lines contain two integers, separated by a space. In the \(i\)-th of those lines, the first number \(A_i\) represents the id of the person the \(i\)-th person owes money to (\(1 \le A_i \le N\), \(A_i \ne i\)), and the second \(B_i\) represents the amount of the debt in dollars (\(1 \le B_i \le 10\,000\)).

출력 형식

First and only line of output should contain one integ\(er - th\)e minimum total ammount of money town
has to give to its inhabitants so all debts are returned.

서브태스크
서브태스크점수설명

Test 1

10점

None

Test 2

10점

None

Test 3

10점

None

Test 4

10점

None

Test 5

10점

None

Test 6

10점

None

Test 7

10점

None

Test 8

10점

None

Test 9

10점

None

Test 10

10점

None

예제 1
입력
4
2 100
1 100
4 70
3 70
출력
170
예제 2
입력
3
2 120
3 50
2 80
출력
150
예제 3
입력
5
3 30
3 20
4 100
5 40
3 60
출력
110
문제 정보

riseoj 작성

출처 COCI 2010/2011 Contest 4

평가 및 의견

Dugovi

개요
출제자 난이도 Platinum III 플래티넘 III 의견 0 / 50 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

Dugovi

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8