길이 의 목표 수열 이 주어진다.
길이 의 작업 수열 를 생각하자. 처음에는 모든 가 이다. 다음 시행을 원하는 만큼 할 수 있다.
- 두 정수 을 골라 을 만족하게 한다.
- 정수 를 또는 중 하나로 고른다.
- 모든 에 대해 에 를 더한다.
작업 수열 를 목표 수열 와 같게 만드는 데 필요한 시행 횟수의 최솟값을 의 비용이라고 하자.
단순히 비용을 구하는건 너무 쉽다고 생각한 다다스는 개의 업데이트 쿼리를 추가하기로 했다. 각 쿼리는 목표 수열 의 원소 하나를 새로운 값으로 바꾼다. 각 쿼리가 적용된 직후 현재 목표 수열 의 비용을 구하여라.
각 쿼리의 비용을 계산할 때 작업 수열 는 항상 모든 원소가 인 상태에서 시작한다. 이전 쿼리에서 수행한 시행은 다음 쿼리로 이어지지 않는다.
Input
입력은 다음과 같은 형식으로 주어진다.
각 케이스는 다음과 같은 형식으로 주어진다.
번째 쿼리는 를 로 바꾼다.
Output
각 테스트 케이스마다 개의 줄을 출력한다.
번째 줄에는 번째 쿼리를 적용한 직후 현재 목표 수열 의 비용을 출력한다.
Constraints
- .
- .
- .
- ().
- ().
- ().
- 모든 테스트 케이스에 대한 의 합은 이하이다.
- 모든 테스트 케이스에 대한 의 합은 이하이다.
Subtasks
Samples
입력
2
3 4 3
2 3 2
2 6
1 0
3 5
2 1
1 3 5
0
1 4
1 5
1 11
출력
4
4
4
3
4
1
3
첫 번째 테스트 케이스에서 각 쿼리 뒤의 목표 수열은 차례대로 , , , 가 된다.
두 번째 테스트 케이스에서는 길이가 인 목표 수열의 값이 차례대로 , , 이 된다.