結果
| 問題 |
No.1015 おつりは要らないです
|
| ユーザー |
nadeshino
|
| 提出日時 | 2020-04-03 21:43:35 |
| 言語 | Nim (2.2.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,103 bytes |
| コンパイル時間 | 5,224 ms |
| コンパイル使用メモリ | 70,272 KB |
| 実行使用メモリ | 8,960 KB |
| 最終ジャッジ日時 | 2024-07-03 01:55:33 |
| 合計ジャッジ時間 | 30,381 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 9 WA * 12 RE * 1 TLE * 11 |
コンパイルメッセージ
/home/judge/data/code/Main.nim(1, 45) Warning: imported and not used: 'tables' [UnusedImport]
ソースコード
import algorithm, math, strutils, sequtils, tables, macros
let read* = iterator: string {.closure.} =
while true: (for s in stdin.readLine.split: yield s)
template input*(T: static[typedesc]): untyped =
when T is int: read().parseInt
elif T is float: read().parseFloat
elif T is string: read()
macro dump*(arg: varargs[untyped]): untyped =
result = newNimNode(nnkStmtList)
for x in arg:
let name = toStrLit(x)
result.add(quote do: stderr.write `name`, " = " , `x`, ", ")
result.add(quote do: stderr.write "\n")
var N, X, Y, Z = input(int)
var A = @[-1 * 10 ^ 18] & newSeqWith(N, input(int)) & @[10 ^ 18]
for i in 1 .. N:
if A[i] >= 10000:
let K = min(A[i] div 10000, Z)
A[i] -= K * 10000
Z -= K
for i in 1 .. N:
if A[i] >= 5000:
let K = min(A[i] div 5000, Y)
A[i] -= K * 5000
Y -= K
A.sort(cmp, Descending)
for i in 1 .. Z:
A[i] -= 10000
A.sort(cmp, Descending)
for i in 1 .. Y:
A[i] -= 5000
for i in 1 .. N:
while A[i] >= 0 and X > 0:
A[i] -= 1000
dec X
if A[1 .. N].filterIt(it >= 0).len == 0:
echo "Yes"
else:
echo "No"
nadeshino