eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Магнитные подушки

Магнитные подушки

Лимит времени 2 секунды
Лимит использования памяти 128 MiB

Город будущего застроен небоскрёбами, для передвижения между которыми и парковки транспорта многие тройки небоскрёбов соединены треугольной подушкой из однополярных магнитов. Каждая подушка соединяет ровно 3 небоскрёба и вид сверху на неё представляет собой треугольник, с вершинами в небоскрёбах. Это позволяет беспрепятственно передвигаться между соответствующими небоскрёбами. Подушки можно делать на разных уровнях, поэтому один небоскрёб может быть соединён различными подушками с парами других, причём два небоскрёба могут соединять несколько подушек (как с разными третьими небоскрёбами, так и с одинаковыми). Например, возможны две подушки на разных уровнях между небоскрёбами 1, 2 и 3 и, кроме того, магнитная подушка между 1, 2, 5.

Система магнитных подушек организована так, что с их помощью можно добираться от одного небоскрёба, до любого другого в этом городе (с одной подушки на другую можно перемещаться внутри небоскрёба), но поддержание каждой из них требует больших затрат энергии.

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

Входные данные

В первой строке находятся числа n и m~(3 \le n \le 10^5, 1 \le m \le 10^5) — количество небоскрёбов в городе и количество работающих магнитных подушек соответственно. В каждой из последующих m строк через пробел записаны три числа — номера небоскрёбов, соединённых подушкой. Небоскрёбы пронумерованы числами от 1 до n. Гарантируется, что имеющиеся магнитные подушки позволяют перемещаться от одного небоскрёба до любого другого.

Выходные данные

Выведите сначала количество тех магнитных подушек, отключение которых невозможно без нарушения сообщения в городе. Если это число отлично от нуля, то в следующей строке через пробел выведите их номера. Нумерация должна соответствовать тому порядку, в котором подушки перечислены во входных данных. Нумерация начинается с единицы.

Пример

Входные данные #1
5 4
1 2 3
2 4 3
1 2 4
3 5 1
Выходные данные #1
1
4
Входные данные #2
3 2
1 2 3
3 2 1
Выходные данные #2
0
Входные данные #3
3 1
1 2 3
Выходные данные #3
1
1