結果
問題 |
No.1015 おつりは要らないです
|
ユーザー |
![]() |
提出日時 | 2020-04-04 00:47:32 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
WA
|
実行時間 | - |
コード長 | 952 bytes |
コンパイル時間 | 164 ms |
コンパイル使用メモリ | 12,544 KB |
実行使用メモリ | 20,164 KB |
最終ジャッジ日時 | 2024-07-03 06:41:17 |
合計ジャッジ時間 | 5,885 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 27 WA * 6 |
ソースコード
import sys readline = sys.stdin.buffer.readline def even(n): return 1 if n%2==0 else 0 n,sen,gosen,man = map(int,readline().split()) lst1 = list(map(int,readline().split())) lst1.sort(reverse=True) for i in range(len(lst1)): lst1[i] += 1 #lst1[i]+1円を支払う必要がある i = 0 l = len(lst1) while True: if i >= l: break if lst1[i] < 10000: break else: if man > 0: mai = min(man,lst1[i]//10000) lst1[i] -= mai*10000 man -= mai i += 1 lst1.sort(reverse=True) if man: lst1 = lst1[man:] i = 0 l = len(lst1) while True: if i >= l: break if lst1[i] < 5000: break else: if gosen > 0: lst1[i] -= 5000 gosen -= 1 i += 1 lst1.sort(reverse=True) if gosen: lst1 = lst1[gosen:] need = 0 for i in lst1: need += (i+1000-1)//1000 if sen >= need: print("Yes") else: print("No")