EduBrick

C. Список смежности

3000 мс · 256 МБ · всё или ничего

Ориентированный граф задан списком рёбер. Постройте по нему список смежности.

Для каждой вершины надо вывести количество исходящих рёбер, а затем номера вершин, в которые они ведут, в порядке возрастания.

Возможны петли и кратные рёбра: если из вершины 1 в вершину 2 ведут два ребра, вершина 2 должна встретиться в её списке дважды.

Формат ввода

Первая строка содержит числа nn (1≤n≤1051 \le n \le 10^5) и mm (0≤m≤2⋅1050 \le m \le 2 \cdot 10^5).

Далее идут mm строк с парами (u,v)(u, v) — ребро ведёт из uu в vv.

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

Ровно nn строк. В строке ii — количество исходящих рёбер вершины ii, затем концы этих рёбер по возрастанию.

Примеры

ввод
2 1
2 1
вывод
0
1 1
ввод
4 3
1 2
2 3
1 4
вывод
2 2 4
1 3
0
0
Войдите, чтобы отправлять решения.