Боб — досвідчений системний інженер, який регулярно стикається зі складними завданнями. Тепер йому потрібно розв'язати нову задачу: керувати набором серверів із різними можливостями для обробки постійних запитів на завдання із безперервних джерел, де кожне завдання потребує обробки протягом тривалого чи невизначеного часу.
Надходить послідовність запитів на виконання завдань, причому кожен запит містить підмножину серверів, які можуть обробити відповідне завдання. Кожне завдання виконується на одному сервері, і кожен сервер може обробляти лише одне завдання. Боб повинен запланувати максимальну кількість завдань на серверах. Наприклад, якщо є завдання j_1 і j_2 та сервери s_1 і s_2, і обидва завдання j_1 і j_2 потребують сервер s_1, Боб може запланувати лише одне завдання. Чи зможете ви йому допомогти?
У загальному випадку є завдань, пронумерованих від до n-1, серверів, пронумерованих від до 2n-1, і послідовність запитів на виконання завдань. Завдання полягає у визначенні максимальної кількості завдань, які можна обробити.
Програма зчитує вхідні дані з текстового файлу (не більше МБ). Кожен набір даних у файлі представляє певний набір завдань. Набір даних починається з числа (n \leq 10000) — кількості завдань, далі йдуть списки потрібних серверів для кожного завдання у форматі: job_number: (nr_servers) s_1 ...s_{nr\_servers}
Пробіли можуть довільно зустрічатися у вхідних даних. Вхідні дані правильні й закінчуються кінцем файлу.
Програма виводить максимальну кількість завдань, які можна опрацювати. Для кожного набору даних програма виводить результат у стандартний потік виводу з початку нового рядка.
Приклад 1
Зразок вхідних/вихідних даних наведено в таблиці нижче. Є два набори даних. У першому випадку кількість завдань дорівнює , вони мають номери і . Послідовність запиту для завдання — 0: (1) 2, що означає, що завдання потребує сервер, а саме сервер . Послідовність запиту для завдання — 1: (1) 2, тобто завдання також потребує сервер, сервер . Результат для цього набору даних — довжина максимальної кількості запланованих завдань, .