C - Sequence
Time Limit: 2 sec / Memory Limit: 256 MB
Score : 300300 points
Problem Statement
You are given an integer sequence of length NN. The ii-th term in the sequence is aiai. 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 ii (1≤i≤n)(1≤i≤n), the sum of the terms from the 11-st through ii-th term is not zero.
- For every ii (1≤i≤n−1)(1≤i≤n−1), the sign of the sum of the terms from the 11-st through ii-th term, is different from the sign of the sum of the terms from the 11-st through (i+1)(i+1)-th term.
Constraints
- 2≤n≤1052≤n≤105
- |ai|≤109|ai|≤109
- Each aiai is an integer.
Input
Input is given from Standard Input in the following format:
Output
Print the minimum necessary count of operations.
Sample Input 1 Copy
Copy
Sample Output 1 Copy
Copy
For example, the given sequence can be transformed into 1,−2,2,−21,−2,2,−2 by four operations. The sums of the first one, two, three and four terms are 1,−1,11,−1,1and −1−1, respectively, which satisfy the conditions.
Sample Input 2 Copy
Copy
Sample Output 2 Copy
Copy
The given sequence already satisfies the conditions.
Sample Input 3 Copy
Copy
Sample Output 3 Copy
Copy
题意:
n个数满足前缀和不为0且前缀和正负交替,每次可以增加1或者减少1,问最数的操作次数
分析:
奇正偶负
欧负奇正
两种情况,暴力+贪心
神奇题