結果

問題 No.1473 おでぶなおばけさん
ユーザー 小野寺健
提出日時 2021-10-31 08:55:30
言語 Ruby
(3.4.1)
結果
TLE  
実行時間 -
コード長 573 bytes
コンパイル時間 228 ms
コンパイル使用メモリ 7,424 KB
実行使用メモリ 45,184 KB
最終ジャッジ日時 2024-10-08 08:48:08
合計ジャッジ時間 6,733 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 41 TLE * 1 -- * 5
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

n, m = gets.split(" ").map{|s| s.to_i}

w = Array.new(n) {Array.new(2, -Float::INFINITY)}
0.upto(n-1) {|i|
	w[i][1] = Float::INFINITY
}
w[0][0] = Float::INFINITY

v = Array.new(n) {Array.new}

m.times {
	s, t, d = gets.split(" ").map{|s| s.to_i}
	v[s-1] << [t-1, d]
	v[t-1] << [s-1, d]
}
	
que = [[0, Float::INFINITY, 0]]

while que.length > 0 do
	cv, cd, ci = que.shift
	v[cv].each {|nv, nd|
		nd = cd if cd < nd
		if nd > w[nv][0] or (nd == w[nv][0] and ci+1 < w[nv][1]) then
			w[nv] = [nd, ci+1]
			que << [nv, nd, ci+1]
		end
	}		
end

puts "#{w[n-1][0]} #{w[n-1][1]}"
0