CF1556C.Compressed Bracket Sequence
普及+/提高
通过率:0%
时间限制:1.00s
内存限制:256MB
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.

威廉有一个最喜爱的括号序列。由于该序列长度较大,他以一个正整数序列 c1,c2,…,cn 的形式提供给你:当 i 为奇数时,ci 表示连续左括号 "(" 的个数;当 i 为偶数时,ci 表示连续右括号 ")" 的个数。
例如,对于括号序列 "((())()))",其对应的数字序列为 [3,2,1,3]。
你需要计算原始括号序列中,有多少个连续子序列(即子区间)[l,r](满足 l≤r)是合法括号序列(regular bracket sequence)。
若能通过向该括号序列中插入字符 "+" 和 "1" 得到一个合法的算术表达式,则称该括号序列为合法括号序列。例如,"(())()"、"()" 和 "(())(()))" 是合法的,而 ")("、"(()" 和 "(())(" 则不是。
输入格式
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.
第一行包含一个整数 n (1≤n≤1000),表示压缩序列的长度。
第二行包含一个整数序列 c1,c2,…,cn (1≤ci≤109),即压缩序列。
输出格式
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.
输出一个整数——原括号序列中,合法括号序列的子段总数。
可以证明,答案在有符号 64 位整数数据类型范围内。
输入输出样例
输入#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 3rd to 10th character: (()(()))
- Subsequence from the 4th to 5th character: ()
- Subsequence from the 4th to 9th character: ()(())
- Subsequence from the 6th to 9th character: (())
- Subsequence from the 7th to 8th character: ()
In the second example a sequence ()))(()(()))) is described.
In the third example a sequence ()()(()) is described.
在第一个例子中,描述了一个括号序列 (((()(()))( 。该括号序列包含 5 个构成规则括号序列的子段:
- 第 3 个到第 10 个字符构成的子序列:
(()(())) - 第 4 个到第 5 个字符构成的子序列:
() - 第 4 个到第 9 个字符构成的子序列:
()(( - 第 6 个到第 9 个字符构成的子序列:
(()) - 第 7 个到第 8 个字符构成的子序列:
()
在第二个例子中,描述了一个括号序列 ()))(()(())))。
在第三个例子中,描述了一个括号序列 ()()(())。
输入解题思路,AI测评打分。不知道怎么写?