EduBrick

L. Паросочетание или независимое множество

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

Дан неориентированный граф из 3n3n вершин. Нужно найти или паросочетание из nn рёбер, или независимое множество из nn вершин. Граф не обязан быть двудольным.

Формат ввода

В первой строке TT — количество графов. Далее описания графов.

В первой строке описания nn и mm (1≤n≤1051 \le n \le 10^5, 0≤m≤5⋅1050 \le m \le 5 \cdot 10^5): вершин в графе 3n3n, рёбер mm. В следующих mm строках пары viv_i, uiu_i (1≤vi,ui≤3n1 \le v_i, u_i \le 3n) — рёбра. Петель и кратных рёбер нет.

Сумма nn по всем графам не превосходит 10510^5, сумма mm — не превосходит 5⋅1055 \cdot 10^5.

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

Для каждого графа выведите либо Matching и nn номеров рёбер (рёбра нумеруются с единицы в порядке ввода), либо IndSet и nn номеров вершин. Числа можно выводить в любом порядке.

Примеры

ввод
2
1 2
1 2
1 3
1 1
1 2
вывод
Matching
1
Matching
1
ввод
1
1 0
вывод
IndSet
1
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.