172732025-06-09 19:49:59algoproGamepypy3Futási hiba 30/1001.225s65536 KiB
# UUID: c32c3a76-b9a8-40a2-92d0-719ecaa6ad1b
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)

    out = []
    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

        out.append(str(res[0]))
    
    sys.stdout.write('\n'.join(out) + '\n')

main()

RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask110/10
1Elfogadva41ms19648 KiB
2Elfogadva46ms19684 KiB
subtask220/20
1Elfogadva85ms22144 KiB
2Elfogadva75ms22244 KiB
3Elfogadva86ms21996 KiB
4Elfogadva108ms22348 KiB
subtask30/70
1Elfogadva252ms23948 KiB
2Elfogadva266ms24764 KiB
3Elfogadva611ms32676 KiB
4Elfogadva737ms38488 KiB
5Futási hiba1.139s65536 KiB
6Futási hiba1.225s65536 KiB
7Futási hiba1.222s65536 KiB
8Futási hiba754ms65536 KiB
9Futási hiba912ms65536 KiB
10Futási hiba945ms65536 KiB
11Futási hiba700ms65536 KiB
12Futási hiba985ms65536 KiB
13Futási hiba1.006s65536 KiB
14Futási hiba859ms65536 KiB