結果

問題 No.134 走れ!サブロー君
ユーザー gigurururu
提出日時 2015-01-25 17:57:21
言語 Ruby
(3.4.1)
結果
AC  
実行時間 1,376 ms / 5,000 ms
コード長 340 bytes
コンパイル時間 390 ms
コンパイル使用メモリ 7,296 KB
実行使用メモリ 25,984 KB
最終ジャッジ日時 2024-12-26 02:50:32
合計ジャッジ時間 6,565 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 15
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

def g;gets.split.map(&:to_f)end
X,Y=g
n,=g
L=(1..n).map{g}+[[X,Y,0]]
Memo=L.map{{}}
def dfs(a,left)
  x,y,=L[a]
  Memo[a][left]||=left[0]?(left.map{|i|
    t,u,=L[i]
    dfs(i,left-[i])+((x-t).abs+(y-u).abs)*(left.inject(0){|s,r|s+L[r][2]}+100.0)/120
  }.min):((X-x).abs+(Y-y).abs)*(100.0)/120
end
p dfs(n,[*0...n])+L.inject(0){|s,r|s+r[2]}
0