#P679. 括号计分

括号计分

题目描述

括号序列是由 () 构成的序列。平衡的括号序列要求 () 出现次数一样多,而且序列的每个前缀里 ( 出现次数不低于 ) 的出现次数。

对平衡的括号序列,定义一种计分规则如下:

  • 如果只有一对括号 (),只算 11 分;
  • (A) 的分数是 A22 倍;
  • AB 的分数是 AB 的和,其中 AB 必须是平衡的括号序列。

给定一个平衡的括号序列,请计算它的分数,由于数字可能很大,输出答案模 1,000,000,0071,000,000,007 的余数。

输入格式

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

输出格式

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

()()()
3
((()))
4

数据范围

nn 表示输入字符串的长度,

  • 对于 50%50\% 的数据,1n2001\leq n\leq 200
  • 对于 100%100\% 的数据,1n200,0001\leq n\leq 200,000