问题 5847 --匹配括号(四)

5847: 匹配括号(四)

题目描述

括号序列是由 `(` 与 `)` 构成的序列。平衡的括号序列要求 `(` 与 `)` 出现次数一样多,而且序列的每个前缀里 `(` 出现次数不低于 `)` 的出现次数。 对平衡的括号序列,定义一种计分规则如下: + 如果只有一对括号 `()`,只算 $1$ 分; + `(A)` 的分数是 `A` 的 $2$ 倍; + `AB` 的分数是 `A` 与 `B` 的和,其中 `A` 与 `B` 必须是平衡的括号序列。 给定一个平衡的括号序列,请计算它的分数,由于数字可能很大,输出答案模 $1,000,000,007$ 的余数。

输入

单个字符串:表示输入的序列。

输出

单个整数:表示括号序列的分数模 $1,000,000,007$ 的余数。

样例输入输出

输入#1 复制
()()()
输出#1 复制
3
输入#2 复制
((()))
输出#2 复制
4

提示

设 $n$ 表示输入字符串的长度, + 对于 $50\%$ 的数据,$1\leq n\leq 200$; + 对于 $100\%$ 的数据,$1\leq n\leq 200,000$。
序号 标题 作者 发表时间 费用 订购数 操作