結果
問題 |
No.1015 おつりは要らないです
|
ユーザー |
![]() |
提出日時 | 2023-10-08 19:49:48 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 73 ms / 2,000 ms |
コード長 | 843 bytes |
コンパイル時間 | 445 ms |
コンパイル使用メモリ | 82,444 KB |
実行使用メモリ | 87,752 KB |
最終ジャッジ日時 | 2024-07-26 18:11:13 |
合計ジャッジ時間 | 3,565 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 33 |
ソースコード
N,x,y,z=map(int,input().split()) A=list(map(int,input().split())) v=[0]*10 for i in range(N): n=A[i] n+=1000 h=n//(10000) if z>=h: z-=h else: h-=z z=0 if y>=2*h: y-=2*h else: cost=10000*h cost-=5000*y y=0 if 1000*x>=cost: x-=cost//(1000) else: print('No') exit() t=(A[i]+1000)%(10000) v[t//(1000)]+=1 for i in range(9,0,-1): if z>=v[i]: z-=v[i] v[i]=0 else: v[i]-=z z=0 for i in range(9,0,-1): if y>=v[i]: if i>=5: v[i-5]+=v[i] y-=v[i] v[i]=0 else: y-=v[i] v[i]=0 else: if i>=5: v[i-5]+=y v[i]-=y y=0 else: v[i]-=y y=0 for i in range(9,0,-1): if x>=i*v[i]: x-=i*v[i] v[i]=0 v[0]=0 if sum(v)==0: print('Yes') else: print('No')