#1661. [USACO2011 Feb]Best Parenthesis

[USACO2011 Feb]Best Parenthesis

Description

Recently, the cows have been competing with strings of balanced

parentheses and comparing them with each other to see who has the

best one.

Such strings are scored as follows (all strings are balanced): the

string "()" has score 1; if "A" has score s(A) then "(A)" has score

2*s(A); and if "A" and "B" have scores s(A) and s(B), respectively,

then "AB" has score s(A)+s(B). For example, s("(())()") =

s("(())")+s("()") = 2s("()")+1 = 21+1 = 3.

Bessie wants to beat all of her fellow cows, so she needs to calculate

the score of some strings. Given a string of balanced parentheses

of length N (2 <= N <= 100,000), help Bessie compute its score.

计算“平衡字符串”的分数,“平衡字符串”是指由相同数量的‘(’和‘)’组成,

且以‘(’开头,以‘)’结尾的字符串。

计算规则:

字符串“()”的得分是1.

如果,平衡字符串“A”的得分是是S(A),那么字符串“(A)”得分是2*S(A) ;

如果,“A”,“B” 得分分别是S(A)和S(B),那么平衡字符串“AB”得分为S(A)+S(B)

例如:s("(())()") =s("(())")+s("()") = 2s("()")+1 = 21+1 = 3.

Format

Input

  • Line 1: A single integer: N
  • Lines 2..N + 1: Line i+1 will contain 1 integer: 0 if the ith character of the string is '(', and 1 if the ith character of the string is ')' 第1行:N,平衡字符串长度 第2至N+1行:Linei+1 整数0或1,0代表字符‘(’,1代表‘)’

Output

  • Line 1: The score of the string. Since this number can get quite large, output the score modulo 12345678910. 计算字符串得分,结果对12345678910取模

Samples

6
0
0
1
1
0
1
3

Limitation

INPUT DETAILS: This corresponds to the string "(())()".