# UUID: 49b32ea1-31c1-4340-ba3d-8d210a3e70fe
import sys
input = sys.stdin.readline
def upd(res, b, x):
if b % 2 == 1:
res[0] += x
else:
res[0] -= x
def main():
n, q = map(int, input().split())
vali = list(map(int, input().split()))
a = []
for i in range(1, n + 1):
a.append((vali[i-1], i))
a.sort(reverse=True)
del(vali)
vali = list(map(int, input().split()))
for ii in range(q):
pnt = x = vali[ii]
res = [0]
f = [False] * (n + 2)
for i in range(n):
val, pos = a[i]
while pnt <= n and f[pnt]:
pnt += 1
if pnt > n:
upd(res, i + 1, val)
elif pos > pnt:
upd(res, pos - x + 1, val)
f[pos] = True
else:
upd(res, pnt - x + 1, val)
f[pnt] = True
sys.stdout.write(str(res[0]) + '\n')
main()
| Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 10/10 | ||||||
| 1 | Elfogadva | 39ms | 19692 KiB | ||||
| 2 | Elfogadva | 45ms | 19688 KiB | ||||
| subtask2 | 20/20 | ||||||
| 1 | Elfogadva | 78ms | 22224 KiB | ||||
| 2 | Elfogadva | 81ms | 22148 KiB | ||||
| 3 | Elfogadva | 87ms | 22100 KiB | ||||
| 4 | Elfogadva | 109ms | 22376 KiB | ||||
| subtask3 | 0/70 | ||||||
| 1 | Elfogadva | 252ms | 24084 KiB | ||||
| 2 | Elfogadva | 263ms | 24948 KiB | ||||
| 3 | Elfogadva | 606ms | 33136 KiB | ||||
| 4 | Elfogadva | 712ms | 38476 KiB | ||||
| 5 | Futási hiba | 1.116s | 65536 KiB | ||||
| 6 | Futási hiba | 1.213s | 65536 KiB | ||||
| 7 | Futási hiba | 1.243s | 65536 KiB | ||||
| 8 | Futási hiba | 737ms | 65536 KiB | ||||
| 9 | Futási hiba | 915ms | 65536 KiB | ||||
| 10 | Futási hiba | 939ms | 65536 KiB | ||||
| 11 | Futási hiba | 690ms | 65536 KiB | ||||
| 12 | Futási hiba | 1.047s | 65536 KiB | ||||
| 13 | Futási hiba | 981ms | 65536 KiB | ||||
| 14 | Futási hiba | 819ms | 65536 KiB | ||||