結果
問題 |
No.1344 Typical Shortest Path Sum
|
ユーザー |
![]() |
提出日時 | 2021-01-16 14:52:16 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
TLE
|
実行時間 | - |
コード長 | 928 bytes |
コンパイル時間 | 109 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 27,008 KB |
最終ジャッジ日時 | 2024-11-27 17:07:07 |
合計ジャッジ時間 | 22,133 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 72 TLE * 5 |
ソースコード
from collections import deque n,m=map(int,input().split()) num=[[[] for _ in range(n)] for z in range(n)] for i in range(m): s,t,d=map(int,input().split()) num[s-1][t-1].append(d) num2=[[] for _ in range(n)] for i in range(n): for j in range(n): if len(num[i][j])!=0: num2[i].append([j,min(num[i][j])]) for i in range(n): queue=deque() ans=[10**18]*n ans[i]=0 queue.append(i) while len(queue)!=0: num1=queue.popleft() num3=ans[num1] num4=num2[num1] for j in range(len(num4)): if ans[num4[j][0]]==10**18: ans[num4[j][0]]=num3+num4[j][1] queue.append(num4[j][0]) if ans[num4[j][0]]>num3+num4[j][1]: ans[num4[j][0]]=num3+num4[j][1] queue.append(num4[j][0]) ans2=0 for j in range(n): if ans[j]!=10**18: ans2+=ans[j] print(ans2)