| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1305393 | aditya_k47 | Bank (IZhO14_bank) | Pypy 3 | 424 ms | 67496 KiB |
import sys
n,m=map(int,input().split())
a=list(map(int,input().split()))
b=list(map(int,input().split()))
prefix=[-1]*(1<<m)
left=[-1]*(1<<m)
prefix[0]=left[0]=0
for s in range(1,1<<m):
for i in range(m):
if not s>>i&1:
continue
bit=s^(1<<i)
idx=prefix[bit]
if idx==-1:
continue
amt=left[bit]+b[i]
if amt<a[idx]:
left[s]=amt
prefix[s]=idx
elif amt==a[idx]:
left[s]=0
prefix[s]=idx+1
if prefix[s]==n:
print("YES")
exit()
print("NO")
Compilation message (stdout)
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
