#aBC312D. [ABC312D] Count Bracket Sequences
[ABC312D] Count Bracket Sequences
AT_abc312_d [ABC312D] Count Bracket Sequences
题目描述
给定一个非空字符串 ,其中每个字符都是 (、) 或 ? 之一。
如果 中包含 个 ?,那么将每个 ? 替换为 ( 或 ) 可以得到 种新的字符串。请你计算,在这些替换方式中,使得新字符串成为括号序列的方案数,并输出其对 取模的结果。
括号序列定义如下:
- 空字符串;
- 存在某个括号序列 ,将
(、、)按顺序连接得到的字符串; - 存在某些非空括号序列 ,将 按顺序连接得到的字符串。
输入格式
输入为标准输入,格式如下:
输出格式
请输出答案。
输入输出样例 #1
输入 #1
(???(?
输出 #1
2
输入输出样例 #2
输入 #2
)))))
输出 #2
0
输入输出样例 #3
输入 #3
??????????????(????????(??????)?????????(?(??)
输出 #3
603032273
说明/提示
限制条件
- 是一个长度不超过 的非空字符串,仅由
(、)、?组成。
样例解释 1
将 替换为 ()()() 或 (())() 时,可以得到括号序列。除此之外,没有其他替换方式能得到括号序列,因此输出 。
样例解释 3
请输出对 取模的结果。
由 ChatGPT 4.1 翻译