CF1556C.Compressed Bracket Sequence
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
William has a favorite bracket sequence. Since his favorite sequence is quite big he provided it to you as a sequence of positive integers c1,c2,…,cn where ci is the number of consecutive brackets "(" if i is an odd number or the number of consecutive brackets ")" if i is an even number.
For example for a bracket sequence "((())()))" a corresponding sequence of numbers is [3,2,1,3] .
You need to find the total number of continuous subsequences (subsegments) [l,r] ( l≤r ) of the original bracket sequence, which are regular bracket sequences.
A bracket sequence is called regular if it is possible to obtain correct arithmetic expression by inserting characters "+" and "1" into this sequence. For example, sequences "(())()", "()" and "(()(()))" are regular, while ")(", "(()" and "(()))(" are not.
输入格式
The first line contains a single integer n (1≤n≤1000) , the size of the compressed sequence.
The second line contains a sequence of integers c1,c2,…,cn (1≤ci≤109) , the compressed sequence.
输出格式
Output a single integer — the total number of subsegments of the original bracket sequence, which are regular bracket sequences.
It can be proved that the answer fits in the signed 64-bit integer data type.
输入输出样例
输入#1
5 4 1 2 3 1
输出#1
5
输入#2
6 1 3 2 1 2 4
输出#2
6
输入#3
6 1 1 1 1 2 2
输出#3
7
说明/提示
In the first example a sequence (((()(()))( is described. This bracket sequence contains 5 subsegments which form regular bracket sequences:
- Subsequence from the 3 rd to 10 th character: (()(()))
- Subsequence from the 4 th to 5 th character: ()
- Subsequence from the 4 th to 9 th character: ()(())
- Subsequence from the 6 th to 9 th character: (())
- Subsequence from the 7 th to 8 th character: ()
In the second example a sequence ()))(()(()))) is described.
In the third example a sequence ()()(()) is described.