Sequence

AtCoder
IDarc072_a
Time2000ms
Memory256MB
Difficulty
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_i$ is an integer. ## Input Input is given from Standard Input in the following format: $n$ $a_1$ $a_2$ $...$ $a_n$ [samples]
Samples
Input #1
4
1 -3 1 0
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.
Input #2
5
3 -6 4 -5 7
Output #2
0

The given sequence already satisfies the conditions.
Input #3
6
-1 4 3 2 -5 4
Output #3
8
API Response (JSON)
{
  "problem": {
    "name": "Sequence",
    "description": {
      "content": "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 opera",
      "description_type": "Markdown"
    },
    "platform": "AtCoder",
    "limit": {
      "time_limit": 2000,
      "memory_limit": 262144
    },
    "difficulty": "None",
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "arc072_a"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "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.\nAt least how many opera...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments