Submission #1171890

#TimeUsernameProblemLanguageResultExecution timeMemory
1171890IsamAutobus (COCI22_autobus)Pypy 3
30 / 70
1035 ms56524 KiB
INF = int(1e9 + 7) def solve(): n, m = map(int, input().split()) dp = [[[INF for _ in range(75)] for _ in range(75)] for _ in range(75)] for i in range(1, 72): for j in range(i, 72): for l in range(75): dp[i][j][l] = dp[j][i][l] = INF for i in range(1, n+1): dp[i][i][0] = 0 for _ in range(m): a, b, t = map(int, input().split()) dp[a][b][1] = min(dp[a][b][1], t) K, Q = map(int, input().split()) for k in range(1, min(K + 1, 71)): for i in range(1, n + 1): for j in range(1, n + 1): for l in range(1, n + 1): if dp[i][l][k - 1] != INF and dp[l][j][1] != INF: dp[i][j][k] = min(dp[i][j][k], dp[i][l][k - 1] + dp[l][j][1]) for _ in range(Q): u, v = map(int, input().split()) ans = INF for i in range(min(K + 1, 71)): ans = min(ans, dp[u][v][i]) print(-1 if ans == INF else ans) solve()

Compilation message (stdout)

Compiling 'Main.py'...

=======
  adding: __main__.pyc (deflated 52%)

=======
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...