아이가 좋아하는 장난감을 하나씩 배정하되 각 장난감 분류마다 쓸 수 있는 개수 상한이 있을 때, 만족하는 아이 수의 최댓값을 구한다.
보통7그래프BFS그리디구현아직 제출이 없습니다시간 제한2초메모리 제한512 MBWaif Until Dark는 부모가 둘 다 낮에 일하는 가정의 아이를 돌보는 어린이집이다. 아이들이 지루해하지 않도록 어린이집에는 가지고 놀 장난감이 여러 개 있다. 장난감 중 일부는 운동 장난감, 악기 장난감, 인형처럼 하나의 분류에 속한다. 이런 장난감이 빨리 닳는 것을 막으려고 교사들은 분류마다 놀이 시간에 쓸 수 있는 장난감 개수를 제한한다. 아이마다 좋아하는 장난감이 달라서 모두에게 마음에 드는 장난감을 하나씩 쥐여 주기는 쉽지 않다.
아이 한 명은 장난감을 많아야 하나 받고, 장난감 하나는 많아야 한 아이에게 간다. 자기가 좋아한다고 적은 장난감을 받은 아이를 만족한 아이라고 한다. 동시에 만족시킬 수 있는 아이 수의 최댓값을 구하여라.
첫째 줄에 아이 수 n, 장난감 수 m, 분류 수 p가 주어진다 (1≤n,m≤100, 0≤p≤m). 아이와 장난감의 번호는 1부터 시작한다.
다음 n개 줄에는 k i1 i2 … ik 형식의 정보가 주어진다 (1≤k≤m, 1≤i1,i2,…,ik≤m). 이 중 j번째 줄은 j번 아이가 장난감 i1부터 ik까지를 좋아한다는 뜻이다.
그다음 p개 줄에는 l t1 t2 … tl r 형식의 정보가 주어진다 (1≤r≤l≤m, 1≤t1,t2,…,tl≤m). 이 중 j번째 줄은 장난감 t1부터 tl까지가 j번 분류에 속하고, 그 분류에서 많아야 r개까지 쓸 수 있다는 뜻이다.
장난감 하나는 많아야 한 분류에 속한다. 이 p개 줄에 한 번도 나오지 않은 장난감은 어느 분류에도 속하지 않으며, 그런 장난감은 개수 제한 없이 모두 쓸 수 있다. 한 줄에 같은 장난감 번호가 두 번 나오는 경우는 없다.
좋아하는 장난감을 받아 만족하는 아이 수의 최댓값을 한 줄에 출력한다.