Logo
(追記) (追記ここまで)

최대유량을 사용한 이 풀이가 틀린 이유가 궁금합니다.

11378번 - 열혈강호 4

처음에 이 풀이를 생각하고, 제출해보았지만 절반정도 진행중에 틀리더라구요.

생각을 좀 해 봤지만 맞는 풀이와의 차이를 찾을 수가 없어서 질문글로 올려봅니다.

제가 생각한 풀이는 0번 노드(시작점)으로부터 n+m+1번 노드(임의로 잡은 노드)로 n+k의 용량을 가진 단뱡향 간선을 만들어 줍니다.

그리고, n+m+1번 노드로부터 모든 사람에게 k+1의 용량을 가진 단방향 간선을 만들어줍니다.

이것으로 각 사람이 할 수 있는 일은 최대 k+1개로 제한되며, 모든 사람이 한 일의 총 합도 최대 n+k개로 제한됩니다.

이번에는 각 일로부터, n+m+2(싱크 노드)로 1의 용량을 가진 단방향 간선을 만들어 각 일이 한 번씩만 이루어질 수 있게끔 해줍니다.

그리고 각 사람이 할 수 있는 일을 입력받아, 해당 사람이 할 수 있는 일에 각각 1의 용량을 가진 단방향 간선을 만들어줬습니다.


이런 방식으로 그래프를 만든 뒤, 시작 노드로부터 싱크 노드로의 최대 유량을 구하는 방식을 사용했습니다.

이 풀이의 문제점을 알고싶습니다.

지금 풀이에서 각 사람의 유량의 최댓값은 보장되지만, 분배가 틀릴 수 있습니다. 벌점 0점인 사람이 받아야 했을 유량(정확히는 용량)이 다른 사람에게 모일 수 있습니다.

댓글을 작성하려면 로그인해야 합니다.

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /