Условие
Путь
В неориентированном графе требуется найти минимальный путь между
двумя вершинами.
Входные данные
Во входном файле записано сначала число N - количество вершин в графе
(1<=N<=100). Затем записана матрица смежности (0 обозначает отсутствие ребра,
1 - наличие ребра). Затем записаны номера двух вершин - начальной и конечной.
Выходные данные
В выходной файл выведите сначала L - длину пути (количество ребер, которые
нужно пройти). А затем выведите L+1 число - вершины в порядке следования
вдоль этого пути.
Если пути не существует, выведите одно число -1.
Пример входного файла
5
0 1 0 0 1
1 0 1 0 0
0 1 0 0 0
0 0 0 0 0
1 0 0 0 0
3 5
Пример выходного файла
3
3 2 1 5
Подсказка
В этой задаче нужно, сначала вычислив длины путей
до вершин, затем "раскрутить" путь (в обратном направлении). Эта идея
обсуждается перед тем, как решать задачу.
Решение
Скачать архив тестов
Источники и прецеденты использования
|
Курс |
предмет |
информатика |
Название |
Основы программирования на языке Паскаль |
Класс |
8 |
Автор |
Матюхин Виктор Александрович |
Место проведения |
Московская гимназия на Юго-Западе N1543 |
задача |
Номер |
162 |