누가 쿠키를 가져올까?
시간 제한1초메모리 제한128 MB
각 스터디 그룹마다 쿠키를 가져올 소를 한 마리씩 정하되, 소마다 역수의 합을 올림한 한도 안에서 배정하고 사전순으로 가장 작은 배정을 구한다.
문제
농부 John의 소 마리가 번부터 번까지 번호를 달고 개의 스터디 그룹을 만들었습니다. 스터디 그룹 에는 소 마리가 속해 있습니다(한 소가 여러 스터디 그룹에 동시에 속할 수 있습니다).
각 스터디 그룹에서는 모임에 쿠키를 가져올 소 한 마리를 그 그룹의 구성원 중에서 반드시 정해야 합니다. 쿠키는 비싸고 준비하는 데 품이 들기 때문에, 소들은 이 부담을 최대한 공평하게 나누고 싶어 합니다.
어떤 소가 속한 스터디 그룹들의 크기가 각각 라고 합시다(즉 그 소는 개의 그룹에 속해 있고, 그중 번째 그룹의 구성원 수가 명입니다). 이때 그 소가 쿠키를 가져올 의향이 있는 모임 수는 최대
회입니다.
각 스터디 그룹마다 쿠키를 가져올 소 한 마리를 배정하되, 어떤 소도 자신이 원하는 횟수보다 더 많은 모임에 배정되지 않도록 하세요.
제약: , , .
입력
- 첫째 줄: 공백으로 구분된 두 정수 과 .
- 둘째 줄부터 째 줄까지: 째 줄은 스터디 그룹 를 나타내며, 에 이어 그 그룹의 구성원 소 번호 가 모두 공백으로 구분되어 주어집니다.
출력
개의 줄을 출력합니다. 째 줄에는 스터디 그룹 에 쿠키를 가져오는 소의 번호 를 출력합니다.
유효한 배정이 여러 개일 수 있으므로 사전순으로 가장 작은 배정을 출력하세요. 즉 을 가능한 한 작게, 그런 배정들 중에서 를 가능한 한 작게, 이런 식으로 정합니다.
유효한 배정이 존재하지 않으면 대신 하나만 한 줄에 출력합니다.
힌트
이 한도는 소가 맡은 모임이 얼마나 부담스러운지를 반영합니다. 큰 그룹의 구성원은 기여도 가 작으므로 더 많은 모임을 감당할 수 있습니다.
예를 들어 크기가 각각 , , 인 그룹에 속한 소의 한도는 이므로, 그 소는 최대 번의 모임에 쿠키를 가져올 의향이 있습니다. 크기가 인 그룹 두 곳에 속한 소의 한도는 입니다.