Задача AG. Graph minimization

Автор:A. Baranov   Ограничение времени:1 сек
Входной файл:Стандартный вход   Ограничение памяти:512 Мб
Выходной файл:Стандартный выход  

Условие

Пусть нам известны два непересекающихся набора узлов некоторого ориентированного графа: A и B.
Для каждого узла из множества A задан набор всех достижимых из него узлов из B.
При этом узлы из A не должны иметь входящих ребер, а узлы из B — выходящих.

В графе также могут быть промежуточные узлы (множество C), связанные ребрами с узлами из A и B.
При этом никакие два узла из множества C не могут быть связаны между собой.

Требуется получить граф с минимальным числом ребер, который удовлетворяет заданному описанию.
Если существует несколько вариантов, предпочтение отдается графу с минимальным числом узлов.

В качестве ответа следует вывести число узлов и ребер в полученном графе.

Формат входных данных

Входные данные содержат целые числа: N — размер множества A и M — размер множества B.
Далее следуют наборы узлов множества B, достижимых из каждого узла множества A.

В начале набора указывается число узлов в наборе (может быть нулевым),
а затем уже следуют номера самих узлов (нумерация начинается с нуля).

Формат выходных данных

Выходные данные должны содержать два целых числа: число узлов и ребер.

Ограничения

1 ≤ (N, M) ≤ 1000

Примеры тестов

Стандартный вход Стандартный выход
1
5 4

4 0 1 2 3
4 1 0 3 2
4 3 1 0 2
4 0 3 2 1
4 3 2 1 0
10 9
2
5 4

2 1 0
2 0 2
2 2 3
2 3 0
2 0 1
9 10

0.133s 0.016s 15