시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
2 초 | 512 MB | 7 | 3 | 3 | 42.857% |
Paula likes to prepare stir fry. In order to make it as yummy as possible, she needs to chop a sequence of n integers into segments of the maximum total value.
The value of a segment is the difference of its maximum and minimum. The value of a chopped sequence is the sum of the values of the segments.
For example if we chop the sequence [1 4 1 5 3 6] into segments [1 4 1] and [5 3 6], the total value is (4 − 1) + (6 − 3) = 6.
There will be q updates of the form “add x to the elements on indices l, l + 1, . . . , r”. After each update, answer the query “What is the maximum possible value of the chopped sequence?”.
The first line contains integers n and q (1 ≤ n, q ≤ 200 000), the length of the sequence and the number of updates.
The second line contains n integers ai (−108 ≤ ai ≤ 108), the sequence Paula needs to chop. Each of the following q lines contains integers l, r (1 ≤ l ≤ r ≤ n), and x (−108 ≤ x ≤ 108), describing an update.
Output q lines, the maximum possible value of the sequence after each update.
번호 | 배점 | 제한 |
---|---|---|
1 | 15 | 1 ≤ n, q ≤ 200 |
2 | 40 | 1 ≤ n, q ≤ 3000 |
3 | 55 | No additional constraints. |
4 3 1 2 3 4 1 2 1 1 1 2 2 3 1
2 2 0
Possible optimal choppings after each update are respectively: [2 3 3 4], [4 3] [3 4], and [4 4 4 4].
4 3 2 0 2 1 4 4 1 2 2 3 1 3 2
2 1 3