문제 강호네 회사에는 직원이 N명이 있고, 해야할 일이 M개가 있다. 직원은 1번부터 N번까지 번호가 매겨져 있고, 일은 1번부터 M번까지 번호가 매겨져 있다. 각 직원은 한 개의 일만 할 수 있고, 각각의 일을 담당하는 사람은 1명이어야 한다. 각각의 직원이 할 수 있는 일의 목록이 주어졌을 때, M개의 일 중에서 최대 몇 개를 할 수 있는지 구하는 프로그램을 작성하시오. 풀이 이 문제는 DFS 를 이용해서 브루트포스 알고리즘으로 해결하려 했으나 시간 초과가 났다. 이를 조금 변형하면 되는 문제였다. 이 문제는 이분매칭(Bipartite Matching) 알고리즘을 사용하는 데 네트워크 플로우와 연계되는 개념이라고 한다. 이분매칭이란? A 집단이 B 집단을 선택하는 방법에 대한 알고리즘이다. 다시 문제..