Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки

HotLog


 

Транзитивное замыкание

(Время: 1 сек. Память: 16 Мб Сложность: 41%)

Невзвешенный ориентированный граф задан своей матрицей смежности.

Требуется построить его транзитивное замыкание, то есть матрицу, в которой в i-й строке и j-м столбце находится 1, если от вершины i можно добраться до вершины j, и 0 – иначе.

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

В первой строке входного файла INPUT.TXT записано целое число N (1 ≤ N ≤ 100) – число вершин в графе. Далее задана матрица смежности графа: в N строках даны по N чисел 0 или 1 в каждой. i-е число в i-й строке всегда равно 1.

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

В выходной файл OUTPUT.TXT выведите матрицу транзитивного замыкания графа в формате, аналогичным формату матрицы смежности.

Пример

INPUT.TXTOUTPUT.TXT
14
1 1 0 0
0 1 1 0
1 0 1 0
0 0 1 1
1 1 1 0
1 1 1 0
1 1 1 0
1 1 1 1

Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!

 Язык программирования C++
 Решение олимпиадных задач
 Региональные олимпиады
 Книги Фёдора Меньшикова
 Тренировочные олимпиады
 Введение
 Целочисленная арифметика
 Алгоритмы сортировки
 Длинная арифметика
 C++ Standard Template Library
 Динамическое программирование
 Комбинаторика
 Вычислительная геометрия
 Строки
 Структуры данных
 Теория графов - 1
 Теория графов - 2
 Алгоритм Флойда
 Алгоритм Форда-Беллмана
 Алгоритм Дейкстры
 Минимальный каркас
 Эйлеров цикл, конденсация
 Паросочетания
 A. Алгоритм Флойда
 B. Самый длинный путь
 C. Алгоритм Флойда - 2
 D. Флойд вместо Дейкстры
 E. Самый короткий путь
 F. Есть ли цикл?
 G. Транзитивное замыкание
 H. Два профессора
 I. Столовая
 J. Слабая K-связность
 K. Опасный маршрут
 L. Существование пути
 M. Pink Floyd

Красноярский краевой Дворец пионеров, (c)2006 - 2021, E-mail: admin@acmp.ru