結果
問題 |
No.1473 おでぶなおばけさん
|
ユーザー |
|
提出日時 | 2021-04-12 00:27:02 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 1,188 ms / 2,000 ms |
コード長 | 668 bytes |
コンパイル時間 | 288 ms |
コンパイル使用メモリ | 82,176 KB |
実行使用メモリ | 108,416 KB |
最終ジャッジ日時 | 2024-06-27 21:56:14 |
合計ジャッジ時間 | 20,476 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 47 |
ソースコード
from collections import deque n, m = map(int, input().split()) G = [[] for i in range(n)] for _ in range(m): s, t, d = map(int, input().split()) s -= 1; t -= 1 G[s].append((t, d)) G[t].append((s, d)) INF = 10 ** 18 def is_ok(x): dist = [INF] * n dist[0] = 0 Q = deque([0]) while Q: p = Q.popleft() dc = dist[p] + 1 for u, d in G[p]: if d >= x and dist[u] > dc: dist[u] = dc Q.append(u) return dist[-1] l, r = 0, 10 ** 9 + 1 while r - l > 1: mid = (l + r) // 2 tmp = is_ok(mid) if tmp == INF: r = mid else: l = mid print(l, is_ok(l))