Задача №112649. Стратегические трассы

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

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

В первой строке вводится количество городов N ( 1 ≤ N ≤ 1000 ). В следующих N строках записано по N чисел, разделённых пробелами – элементы матрицы смежности графа, который описывает схему соединения городов (единица означает, что дорога есть).

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

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

Примеры
Входные данные
6
0 1 1 0 0 0
1 0 1 0 0 0
1 1 0 1 1 0
0 0 1 0 0 0
0 0 1 0 0 1
0 0 0 0 1 0
Выходные данные
3
3 4
3 5
5 6
Сдать: для сдачи задач необходимо войти в систему