括号匹配问题
题号:NC262030
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

定义一个括号串的权值为,它的最长合法括号子序列的长度。
例如,"())())"的权值是4,它的最长合法括号子序列为"()()"
现在求一个给定括号串的所有连续子串权值之和。

输入描述:

一个仅包含'('和')'的字符串,长度不超过200000。

输出描述:

所有子串的权值和。
示例1

输入

复制
())())

输出

复制
26

说明

权值为2的子串有9个。
权值为4的子串有2个。