Олимпиадный тренинг

Задача . Party Invitations


Задача

Темы:

Фермер Джон организовывает вечеринку для своих коров. Но он хочет пригласить минимальное их количество.
Коровы имеют группы друзей, скажем размера k. И тогда если ФД пригласил k-1 корову из группы, он должен пригласить и оставшуюся k-ую корову из группы.
Группы могут быть любого размера и могут перекрываться. В то же время, никакие две группы не содержат точно одно и то же множество коров. Сумма всех рамзеров групп коров не превысит 250,000.
По заданным группам коров определите минимальное количество коров, которое ФД может пригласить на вечеринку, если он определенно решит пригласить корову с номером 1 (все коровы пронумерованы последовательно, от 1 до N, N<=1,000,000).

PROBLEM NAME: invite
Формат входных данных
* Строка 1: Два разделенных пробелом целых числа: N (количество коров), и G (количество групп).
* Строки 2..1+G: Каждая строка описывает группу коров. Она начинается с целого числа - размера группы S, за которым следуют S номеров коров в этой группе (все целые числа в диапазоне от 1 до N).
Формат выходных данных
* Строка 1: Минимальное количество коров, которое ФД может пригласить на вечеринку.
Примечание
В дополнение к корове 1 ФД должен пригласить корову 3 (по первой группе), корову 4 (по второй группе), корову 2 (по 4-ой группе).


Примеры
Входные данныеВыходные данные
1 10 4
2 1 3
2 3 4
6 1 2 3 4 6 7
4 4 3 2 1
4

time 500 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
Комментарий учителя