結果

問題 No.160 最短経路のうち辞書順最小
ユーザー 👑 hos.lyric
提出日時 2015-03-02 00:05:08
言語 Ruby
(3.4.1)
結果
AC  
実行時間 2,158 ms / 5,000 ms
コード長 288 bytes
コンパイル時間 268 ms
コンパイル使用メモリ 7,680 KB
実行使用メモリ 75,932 KB
最終ジャッジ日時 2024-06-24 00:45:20
合計ジャッジ時間 10,372 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 26
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

z=10**9
n,m,s,t=gets.split.map &:to_i
o=[]
m.times{
  a,b,c=gets.split.map &:to_i
  o<<[a,b,c]<<[b,a,c]
  # o+=[[a,b,c],[b,a,c]]
}
d=[z]*n
d[t]=0
n.times{
  o.map{|a,b,c|
    d[a]=[d[a],c+d[b]].min
  }
}
print u=s
(
  print' ',u=o.map{|a,b,c|
    u!=a||d[a]<c+d[b]?n:b
  }.min
)while u!=t
0