結果
問題 |
No.1473 おでぶなおばけさん
|
ユーザー |
![]() |
提出日時 | 2021-04-09 22:08:08 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 1,281 ms / 2,000 ms |
コード長 | 808 bytes |
コンパイル時間 | 160 ms |
コンパイル使用メモリ | 82,560 KB |
実行使用メモリ | 145,832 KB |
最終ジャッジ日時 | 2024-06-25 05:41:34 |
合計ジャッジ時間 | 23,349 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 47 |
ソースコード
from collections import deque def is_ok(arg): w = BWS(arg) return w != float("Inf") def meguru_bisect(ng, ok): while (abs(ok - ng) > 1): mid = (ok + ng) // 2 if is_ok(mid): ok = mid else: ng = mid return ok def BWS(w): q = deque([]) reach = [float("Inf")]*(n+1) q.append(1) reach[1] = 0 while q: x = q.popleft() for y,z in V[x]: if reach[y] > reach[x] + 1 and w <= z: q.append(y) reach[y] = reach[x] + 1 return reach[-1] n,m = map(int,input().split()) z = [list(map(int,input().split())) for i in range(m)] V = [[] for i in range(n+1)] for s,t,d in z: V[s].append([t,d]) V[t].append([s,d]) ans = meguru_bisect(10**9 + 1, 0) print(ans, BWS(ans))