백준 1956 - 운동 (파이썬)
Updated:
Answer
from sys import stdin
input = stdin.readline
INF = int(1e9)
def floyd_warshall():
for m in range(1, V + 1):
for s in range(1, V + 1):
for e in range(1, V + 1):
dp[s][e] = min(dp[s][e], dp[s][m] + dp[m][e])
V, E = map(int, input().split())
dp = [[INF] * (V + 1) for _ in range(V + 1)]
for _ in range(E):
a, b, c = map(int, input().split())
dp[a][b] = c
floyd_warshall()
answer = INF
for i in range(1, V + 1):
answer = min(answer, dp[i][i])
if answer != INF:
print(answer)
else:
print(-1)
pypy3로 제출하셔야 합니다.