Дан ориентированный взвешенный граф. Найдите кратчайшее расстояние от одной заданной вершины до другой.
В первой строке содержится три числа n, s и f (1 ≤ n ≤ 2000; 1 ≤ s, f ≤ n), где n - количество вершин графа, s - начальная вершина, а f - конечная. В следующих n строках по n чисел - матрица смежности графа, где -1 означает отсутствие ребра между вершинами, а любое неотрицательное число - присутствие ребра данного веса. На главной диагонали матрицы всегда записаны нули.
Вывести искомое расстояние или -1, если пути не существует.