본문 바로가기
알고리즘

[ 백준 2188 ] 축사 배정

by 데구르르르 2021. 3. 1.
728x90

문제

농부 존은 소 축사를 완성하였다. 축사 환경을 쾌적하게 유지하기 위해서, 존은 축사를 M개의 칸으로 구분하고, 한 칸에는 최대 한 마리의 소만 들어가게 계획했다.

첫 주에는 소를 임의 배정해서 축사를 운영했으나, 곧 문제가 발생하게 되었다. 바로 소가 자신이 희망하는 몇 개의 축사 외에는 들어가기를 거부하는 것이다.

농부 존을 도와 최대한 많은 수의 소가 축사에 들어갈 수 있도록 하는 프로그램을 작성하시오. 축사의 번호는 1부터 M까지 매겨져 있다.

입력

첫째 줄에 소의 수 N과 축사의 수 M이 주어진다. (1 ≤ N, M ≤ 200)

둘째 줄부터 N개의 줄에는 각 소가 들어가기 원하는 축사에 대한 정보가 주어진다. i번째 소가 들어가기 원하는 축사의 수 Si (0 ≤ Si ≤ M)이 먼저 주어지고, 이후 Si개의 축사 번호가 주어진다. 같은 축사 번호가 두 번 이상 주어지는 경우는 없다.


출력

첫째 줄에 축사에 들어갈 수 있는 소의 최댓값을 출력한다.

예제 입력 예제 출력
5 5 
2 2 5
3 2 3 4
2 1 5
3 1 2 5
1 2
4

 

풀이

이분매칭 알고리즘의 예제로 나와있어서 풀어보았지만 나에게는 너무 어려웠다...
아직도 코드를 이해중...
정답 비율이 47% 나 되는걸 보면 어려운 문제는 아닌 것 같은데 이분매칭 알고리즘 자체가 나는 어려운가보다 ㅜㅅㅜ


[ JAVA ]

 

728x90

'알고리즘' 카테고리의 다른 글

[ 백준 11376 ] 열혈강호2  (0) 2021.03.01
[ 백준 11375 ] 열혈강호  (0) 2021.03.01
[ 백준 1948 ] 임계경로  (0) 2021.02.27
[ 백준 1516 ] 게임 개발  (0) 2021.02.26
[ 백준 2252 ] 줄 세우기  (0) 2021.02.26

댓글