Submission #634920

#TimeUsernameProblemLanguageResultExecution timeMemory
634920karolb2011Snowball (JOI21_ho_t2)Pypy 3
33 / 100
2578 ms25356 KiB
import sys
input=sys.stdin.readline
n,q=list(map(int,input().split()))
x=list(map(int,input().split()))
wc=0
wm=0
ws=0
L=[0 for i in range(n)]
R=[0 for i in range(n)]
for i in range(q):
    wc+=int(input())
    wm=max(wc,wm)   
    ws=min(wc,ws)
    for i in range(n):
        if i==0:
            L[i]=-ws
        else:
            L[i]=max(min(-ws,x[i]-x[i-1]-wm),L[i])
        if i==n-1:
            R[i]=wm
        else:
            R[i]=max(min(wm,x[i+1]-x[i]+ws),R[i])
for i in range(n):
    print(R[i]+L[i])
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...