#### Registered Users Only

Please login to utilize this feature.

Do note that this website only supports submissions in C++.

### sequence

### Problem Statement

You are given an integer sequence of length `N`. The `i`-th term in the sequence is `a _{i}`.
In one operation, you can select a term and either increment or decrement it by one.

At least how many operations are necessary to satisfy the following conditions?

- For every
`i``(1≤i≤n)`, the sum of the terms from the`1`-st through`i`-th term is not zero. - For every
`i``(1≤i≤n-1)`, the sign of the sum of the terms from the`1`-st through`i`-th term, is different from the sign of the sum of the terms from the`1`-st through`(i+1)`-th term.

### Constraints

`2 ≤ n ≤ 10`^{5}`|a`_{i}| ≤ 10^{9}- Each
`a`is an integer._{i}

### Input

Input is given from Standard Input in the following format:

na_{1}a_{2}...a_{n}

### Output

Print the minimum necessary count of operations.

### Sample Input 1

4 1 -3 1 0

### Sample Output 1

4

For example, the given sequence can be transformed into `1, -2, 2, -2` by four operations. The sums of the first one, two, three and four terms are `1, -1, 1` and `-1`, respectively, which satisfy the conditions.

### Sample Input 2

5 3 -6 4 -5 7

### Sample Output 2

0

The given sequence already satisfies the conditions.

### Sample Input 3

6 -1 4 3 2 -5 4

### Sample Output 3

8

### Tags

### Subtasks and Limits

Subtask | Score | #TC | Time | Memory | Scoring |
---|---|---|---|---|---|

1 | 100 | 18 | 1s | 256MB | Minimum |

2 | 0 | 3 | 1s | 256MB | Minimum |

### Judge Compile Command

g++-7 ans.cpp -o sequence3 -Wall -static -O2 -lm -m64 -s -w -std=gnu++17 -fmax-errors=512