結果
| 問題 |
No.160 最短経路のうち辞書順最小
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2015-03-04 23:21:06 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
AC
|
| 実行時間 | 320 ms / 5,000 ms |
| コード長 | 388 bytes |
| コンパイル時間 | 236 ms |
| コンパイル使用メモリ | 12,672 KB |
| 実行使用メモリ | 35,584 KB |
| 最終ジャッジ日時 | 2024-06-24 07:33:19 |
| 合計ジャッジ時間 | 3,351 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| 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)))