만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

제리를 위한 함정

면접 대비

시간 제한2초메모리 제한1024 MB

요약
플랫폼 높이에 이동량 x를 누적해서 더한 뒤, 각 이동 후 모든 높이 절댓값의 합을 출력합니다.
난이도

보통10점 중 4점

유형
정렬, 누적 합, 이분 탐색
정답자
아직 제출이 없습니다

문제

톰이 드디어 제리를 함정에 가두었다. 함정은 물이 담긴 수조이며, 그 안에 nn개의 플랫폼이 고정되어 있다. ii번째 플랫폼의 높이는 수면을 기준으로 aia_i이다.

각 플랫폼은 제리에게 위험도를 가진다. ai<0a_i < 0이면 플랫폼은 물에 잠겨 있으며 위험도는 −ai-a_i이다. ai⩾0a_i \geqslant 0이면 제리가 플랫폼에서 떨어질 수 있으며 위험도는 aia_i이다. 따라서 ii번째 플랫폼의 위험도는 정확히 ∣ai∣|a_i|이다.

톰은 패널로 모든 플랫폼의 높이를 같은 값 xx만큼 바꿀 수 있다. 즉 ii번째 플랫폼의 새 높이는 ai+xa_i + x가 된다. 제리가 함정을 빠져나오기 전까지 톰은 패널을 kk번 사용할 수 있다. 톰이 행동할 때마다 함정의 전체 위험도, 즉 모든 플랫폼 위험도의 합을 구하시오.

입력

첫 번째 줄에 플랫폼의 개수 nn (1⩽n⩽1000001 \leqslant n \leqslant 100000)이 주어진다. 두 번째 줄에는 공백으로 구분된 nn개의 정수 aia_i가 주어진다 (∣ai∣⩽1000000|a_i| \leqslant 1000000).

세 번째 줄에는 톰이 높이를 바꾸는 횟수 kk (1⩽k⩽1000001 \leqslant k \leqslant 100000)가 주어진다. 마지막 줄에는 kk개의 정수 xix_i가 주어진다. xix_i는 ii번째 행동에서 높이를 바꾸는 값이다 (∣xi∣⩽1000000|x_i| \leqslant 1000000).

출력

톰이 행동할 때마다 함정의 전체 위험도를 새 줄에 출력한다.

힌트

첫 번째 예시에서 첫 행동 후 높이는 1,2,01, 2, 0이 된다. 이후 톰이 22를 더 내리면 −1,0,−2-1, 0, -2가 된다. 마지막 행동 후 높이는 3,4,23, 4, 2이다.

두 번째 예시에서 톰은 높이를 11씩 연속으로 5번 내린다. 행동할 때마다 음수가 늘어나므로 답은 처음에 줄었다가 다시 늘어난다. 마지막 높이는 −4,−3,−2,−1,0-4, -3, -2, -1, 0이며, 높이가 0,1,2,3,40, 1, 2, 3, 4였던 첫 행동 후와 같은 답이 나온다.

예제2

  1. 예제 1

    입력
    3
    2 3 1
    3
    -1 -2 4
    
    예상 출력
    3
    3
    9
    
  2. 예제 2

    입력
    5
    1 2 3 4 5
    5
    -1 -1 -1 -1 -1
    
    예상 출력
    10
    7
    6
    7
    10