문제 링크
- http://icpc.me/2365
사용 알고리즘
- 네트워크 플로우
- 최대 유량
- 파라메트릭 서치
풀이
1960 행렬 만들기와 비슷한 방식으로 풀 수 있는 문제입니다.(풀이)
행렬 만들기 풀이를 먼저 보고 와주세요.
소스(S)와 각 행을 대표하는 간선, 각 열을 대표하는 간선과 싱크(T)를 연결하는 간선의 capacity는 각각 행/열의 합으로 잡는 것은 동일합니다.
행렬 만들기 문제에서는 0 아니면 1이 들어가지만 이 문제에서는 0~10000의 자연수가 들어갈 수 있으면서, 가장 큰 숫자를 최소화해야 합니다.
가장 큰 숫자의 최솟값을 파라메트릭 서치로 찾아주면서, 행을 대표하는 정점과 열을 대표하는 정점을 잇는 간선의 capacity를 상한 제한값으로 잡아주면 됩니다.
전체 코드
1 |
|