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

Мережеві війни

Мережеві війни

Комп'ютерна мережа Байтландії складається з \textbf{n} комп'ютерів, з'єднаних \textbf{m} оптоволоконними кабелями. Кожен кабель з'єднує якихось два комп'ютери і може передавати дані в обох напрямках. Два комп'ютери мережі особливо важливі --- один має вихід в інтернет, а другий з'єднано з президентською резиденцією. Комп'ютер, з'єднаний з президентською резиденцією, маєт номер \textbf{1}, а комп'ютер, який має вихід в інтернет, --- номер \textbf{n}. Нещодавно компанія \textit{Max Traffic} вирішила взяти під контроль деякі з'єднання, такі щоб мати можливість переглядати дані, які передаються користувачами з президентської резиденції. Звичайно ж \textit{Max Traffic} хоче контролювати такий набір з'єднань, щоб усі дані, які передаються з інтернета у президентську резиденцію, проходили хоча б через одне з контрольованих з'єднань. Щоб втілити свій план у життя, компанії необхідно придбати відповідні з'єднання у їхніх поточних хазяїв. Кожне з'єднанння має певну ціну. Оскільки основна спеціализація компанії не шпіонаж, а наданя інтернет послуг, керівництво компанії хоче, щоб середня ціна покупки була мінімальною. Якщо компанія купляє \textbf{k} з'єднань сумарної вартості \textbf{c}, то потрібно мінімізувати значенння \textbf{c=k}. \InputFile Перший рядок вхідного файлу містить ціліе числа \textbf{n} (\textbf{2} ≤ \textbf{n} ≤ \textbf{100}) та \textbf{m} (\textbf{1} ≤ \textbf{m} ≤ \textbf{400}). Наступні \textbf{m} рядків містять описи з'єднань --- кожен кабель опианоя трьома цілими числами: номерами комп'ютерів, які він з'єднує, і вартістю покупки. Вартість кожного з'єднання додатна і не перевищує \textbf{10^7}. Довільні два комп'ютери з'єднані не більше, ніж одним кабелем. Жоден комп'ютер не з'єднано з самим собою. Гарантується, що мережа зв'язна, тобто дані можна передати від довільного комп'ютера до довільного іншого по дротам мережі. \OutputFile У першому рядку виведіть число з'єднань, які потрібно придбати. У другому рядку виведіть номери цих з'єднань. З'єднання нумеруються починаючи з \textbf{1} у тому ж порядку, у якому вони задані у вхідному файлі.
Ліміт часу 1 секунда
Ліміт використання пам'яті 64 MiB
Вхідні дані #1
6 8
1 2 3
1 3 3
2 4 2
2 5 2
3 4 2
3 5 2
5 6 3
4 6 3
Вихідні дані #1
4
3 4 5 6