# UUID: 6132f798-d277-48f9-a497-c3debe0e786c
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())
val = list(map(int, input().split()))
a = []
for i in range(1, n + 1):
a.append((val[i-1], i))
a.sort(reverse=True)
Q = list(map(int, input().split()))
for ii in range(q):
pnt = x = Q[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 | 41ms | 19608 KiB | ||||
| 2 | Elfogadva | 48ms | 19716 KiB | ||||
| subtask2 | 20/20 | ||||||
| 1 | Elfogadva | 86ms | 22148 KiB | ||||
| 2 | Elfogadva | 82ms | 22024 KiB | ||||
| 3 | Elfogadva | 90ms | 22124 KiB | ||||
| 4 | Elfogadva | 112ms | 22548 KiB | ||||
| subtask3 | 0/70 | ||||||
| 1 | Elfogadva | 254ms | 24032 KiB | ||||
| 2 | Elfogadva | 264ms | 24904 KiB | ||||
| 3 | Elfogadva | 605ms | 33000 KiB | ||||
| 4 | Elfogadva | 753ms | 38320 KiB | ||||
| 5 | Futási hiba | 1.159s | 65536 KiB | ||||
| 6 | Futási hiba | 1.169s | 65536 KiB | ||||
| 7 | Futási hiba | 1.217s | 65536 KiB | ||||
| 8 | Futási hiba | 861ms | 65536 KiB | ||||
| 9 | Futási hiba | 862ms | 65536 KiB | ||||
| 10 | Futási hiba | 1.021s | 65536 KiB | ||||
| 11 | Futási hiba | 695ms | 65536 KiB | ||||
| 12 | Futási hiba | 970ms | 65536 KiB | ||||
| 13 | Futási hiba | 964ms | 65536 KiB | ||||
| 14 | Futási hiba | 836ms | 65536 KiB | ||||