結果
問題 |
No.614 壊れたキャンパス
|
ユーザー |
👑 |
提出日時 | 2019-05-06 13:57:44 |
言語 | Lua (LuaJit 2.1.1734355927) |
結果 |
TLE
|
実行時間 | - |
コード長 | 880 bytes |
コンパイル時間 | 100 ms |
コンパイル使用メモリ | 5,120 KB |
実行使用メモリ | 65,024 KB |
最終ジャッジ日時 | 2024-06-27 14:33:31 |
合計ジャッジ時間 | 8,907 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 18 TLE * 1 -- * 1 |
ソースコード
local ior = io.input() local n, m, k, s, t = ior:read("*n", "*n", "*n", "*n", "*n") local bridge = {} for i = 1, n - 1 do bridge[i] = {} end for i = 1, m do local a, b, c = ior:read("*n", "*n", "*n") local tmp = {} tmp.b, tmp.c = b, c table.insert(bridge[a], tmp) end local mmi = math.min local poslist = {} poslist[s] = 0 for i = 1, n - 1 do local npos = {} for floor, cost in pairs(poslist) do local br = bridge[i] for j = 1, #br do local ncost = cost + math.abs(floor - br[j].b) if(npos[br[j].c] == nil) then npos[br[j].c] = ncost else npos[br[j].c] = mmi(npos[br[j].c], ncost) end end end poslist = npos end local lastval = -1 for floor, cost in pairs(poslist) do local ncost = cost + math.abs(floor - t) if(lastval < 0) then lastval = ncost else lastval = mmi(lastval, ncost) end end print(lastval)