Задача "Восстановление пути - 1"
Дан ориентированный взвешенный граф. Найдите кратчайший путь от одной заданной вершины до другой. При этом длины кратчайших путей от исходной вершины до всех вершин вам уже даны.
Формат входных данных
В первой строке входного файла три числа: N, S и F (1≤N≤100, 1≤S≤N, 1≤F≤N), где N - количество вершин графа, S - начальная вершина, а F- конечная. В следующих N строках по N чисел, не превосходящих 100, - матрица смежности графа, где -1 означает отсутствие ребра между вершинами, а любое положительное число - присутствие ребра данного веса. На главной диагонали матрицы записаны нули. Далее записано N чисел - длины кратчайших путей от исходной веришны до всех остальных вершин (-1, если пути до указанной вершины не существует).
Формат выходных данных
В выходной файл вывести последовательно все вершины одного (любого) из кратчайших путей, или одно число -1, если пути между указанными вершинами не существует.
Пример ввода
3 1 2 0 -1 2 3 0 -1 -1 4 0 0 6 2
Пример вывода
1 3 2