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

Найкоротша відстань

Найкоротша відстань

Задано орієнтовний граф. Знайдіть найкоротшу відстань від вершини $x$ до усіх інших вершин графа. \InputFile У першому рядку містяться два натуральних числа $n$ та $x~(1 \le n \le 1000, 1 \le x \le n)$ --- кількість вершин у графі та стартова вершина відповідно. Далі у $n$ рядках по $n$ чисел --- матриця суміжності графа: в $i$-му рядку на $j$-му місці стоїть "$1$", якщо вершини $i$ та $j$ з'єднані ребром, і "$0$", якщо ребра між ними немає. На головній діагоналі матриці стоять нулі. \OutputFile Виведіть через пропуск числа $d_1, d_2, ..., d_n$, де $d_i$ дорівнює $-1$, якщо шляхів між $x$ та $i$ немає, у протилежному випадку це мінімальна відстань між $x$ та $i$. \includegraphics{https://static.e-olymp.com/content/c2/c224136cf9f3a3d3b7373c352ad4f8cb1c436ddd.gif}
Ліміт часу 2 секунди
Ліміт використання пам'яті 128 MiB
Вхідні дані #1
6 5
0 1 1 0 0 0
1 0 0 0 0 0
1 1 0 0 0 0
0 0 0 0 1 0
0 0 1 1 0 0
0 1 0 0 0 0
Вихідні дані #1
2 2 1 1 0 -1