编程题
### 问题描述 大衣有一个长度为 $N​$ 的字符串 $S​$,$S​$ 仅含有字符 `:`,`(` 和 `)`。 大衣认为如果字符串是两个 `:` 中包含一个及以上的 `)`,则称其为好括号序列。 例如:`:):`,`:))):` 和 `:))))):` 是好括号序列,而 `:))(:`,`:(:`,`::):` 和 `::` 不是好括号序列。 大衣想知道字符串 $S​$ 所有子串中一共有多少是好括号序列。 ### 输入格式 第一行输入一个正整数 $N$ 表示字符串长度。 第二行输入一个长度为 $N$ 的字符串 $S$。 ### 输出格式 输出一个数字表示字符串 $S​$ 所有子串中好括号序列的数量。 ### 样例输入1 ```text 3 :(: ``` ### 样例输出1 ```text 0 ``` ### 样例输入2 ```text 8 (::))):( ``` ### 样例输出2 ```text 1 ``` ### 样例输入3 ```text 10 :)):):((): ``` ### 样例输出3 ```text 2 ``` ### 说明 - 样例 $1$:字符串 $S$ 中没有 `)` 故好括号序列数量为 $0$。 - 样例 $2$:字符串 $S$ 中有 $1$ 个好括号序列为 $S[3,7]=$`:))):`。 - 样例 $3$:字符串 $S$ 中有 $2$ 个好括号序列分别为 $S[1,4]=$`:)):` 和 $S[4,6]=$`:):`。 ### 评测数据规模 对于所有的评测数据,$1\le N\le 2\times10^5$,$S$ 仅含有字符 `:`,`(` 和 `)`。
查看答案
赣ICP备20007335号-2