結果
問題 |
No.1015 おつりは要らないです
|
ユーザー |
👑 |
提出日時 | 2020-04-03 22:44:16 |
言語 | Lua (LuaJit 2.1.1734355927) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,022 bytes |
コンパイル時間 | 263 ms |
コンパイル使用メモリ | 6,688 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-07-03 05:07:25 |
合計ジャッジ時間 | 3,105 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 21 WA * 12 |
ソースコード
local mfl, mce = math.floor, math.ceil local n, x, y, z = io.read("*n", "*n", "*n", "*n") local a = {} for i = 1, n do a[i] = io.read("*n") if a[i] % 1000 == 0 then a[i] = mfl(a[i] / 1000) + 1 else a[i] = mce(a[i] / 1000) end end table.sort(a) local f = true for i = n, 1, -1 do local v = a[i] local cur = x + y * 5 + z * 10 if cur < v then f = false break end local zneed = mfl(a[i] / 10) v = v - zneed * 10 if zneed <= z then z = z - zneed else local yneed = (zneed - z) * 2 z = 0 if yneed <= y then y = y - yneed else local xneed = (yneed - y) * 5 y = 0 x = x - xneed end end if v <= 4 then if v <= x then x = x - v elseif 1 <= y then y = y - 1 else z = z - 1 end else if 1 <= y and (v - 5) <= x then v = v - 5 y = y - 1 x = x - v elseif v <= x then x = x - v elseif 1 <= z then z = z - 1 else y = y - 2 end end end print(f and "Yes" or "No")