結果
| 問題 |
No.160 最短経路のうち辞書順最小
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2015-03-04 23:21:51 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 663 ms / 5,000 ms |
| コード長 | 388 bytes |
| コンパイル時間 | 255 ms |
| コンパイル使用メモリ | 82,244 KB |
| 実行使用メモリ | 123,088 KB |
| 最終ジャッジ日時 | 2024-06-24 07:33:35 |
| 合計ジャッジ時間 | 4,908 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 26 |
ソースコード
import heapq
N,M,S,G=map(int,input().split())
L=[[] for _ in range(N)]
for _ in range(M):
a,b,c=map(int,input().split())
L[a].append([b,c])
L[b].append([a,c])
q=[[0,[S]],[1e9,[]]]
d={}
while True:
e,n=heapq.heappop(q)
t=n[-1]
if t not in d:
d[t]=True
if t==G: break
for j,i in L[t]: heapq.heappush(q,[i+e,n+[j]])
print(" ".join(map(str,n)))