조커의 카드 마술
시간 제한3초메모리 제한512 MB
0이 아닌 정수 카드 열에서 갱신이 일어날 때마다 양수 합과 음수 합으로 각 값을 나눈 누적합이 최대가 되는 가장 작은 위치를 구한다.
문제
조커는 수학이 필요한 새 카드 마술을 준비한다. 계산을 도와주자.
0이 아닌 정수 가 적힌 카드 장이 한 줄로 놓여 있다. 양수의 합을 , 음수의 합을 이라고 하자. 카드 의 무게 는 이면 , 이면 이다.
로 두자. 조커는 가 가장 큰 위치 를 알고 싶다. 그런 가 여러 개면 가장 작은 것을 고른다.
배열이 고정된 마술은 지루하다. 조커는 카드에 적힌 수를 바꾸고, 한 번 바꿀 때마다 가 가장 큰 위치를 다시 알고 싶어 한다.
입력
첫째 줄에 카드의 수 과 변경 횟수 이 주어진다 ().
둘째 줄에 처음 카드에 적힌 정수 가 개 주어진다 (, ).
다음 개 줄에 정수 와 가 하나씩 주어진다. 위치 에 있는 카드의 수가 로 바뀐다는 뜻이다 (, , ).
어느 순간에도 양수가 적힌 카드와 음수가 적힌 카드가 각각 한 장 이상 있다. 양수의 합은 을 넘지 않고, 음수의 절댓값의 합도 을 넘지 않는다.
출력
개 줄을 출력한다.
첫째 줄에는 처음 수열에서 가 가장 큰 위치를 출력한다. 이어지는 개 줄에는 각 변경 직후 가 가장 큰 위치를 한 줄에 하나씩 출력한다.