A. 括号问号

    传统题 文件IO:bracket 1000ms 256MiB

括号问号

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

对于一个包含 (,)? 的字符串 SS,定义 f(S)f(S) 为:将 SS 中的每个 ? 分别替换成一个 (),可能得到的合法括号串的方案数。

给定长度为 nn,且只包含 (,)? 的字符串 TT,对于所有 2n2^nTT 的子序列串 TT'(包含空串,不要求连续,并且原串不同位置得到的串分别计算),求 f(T)f(T') 之和,对 998244353998244353 取模。


合法括号串的定义:

  • 空串是合法括号串。
  • 如果 A,BA,B 都是合法括号串那么它们前后连接 ABAB 也是合法括号串。
  • 如果 AA 是合法括号串那么 在 AA 外面包裹一对括号得到 (A)\mathtt{(}A\mathtt{)} 也是合法括号串。
  • 一个串是括号串当且仅当它是有限长的并且能用有限步以上几种方式构造出来。

输入格式

第一行一个正整数 nn

第二行一个字符串 TT

输出格式

输出一行一个整数表示答案。

4
(?)?
7

样例解释 #1

子序列串 所有方案 方案数
空串 11
( 00
?
)
?
(? () 11
()
(?
?)
??
)? 00
(?)
(??
()?
?)?
(?)? (()) 11
50
???)??)?(?)(?(??)????(?)?))?)((?()??(??))(()()((?(
827536427

数据范围与提示

对于所有数据,有:

  • 1n50001 \le n \le 5000
  • TT 的长度为 nn,且只由 ( )? 组成。
测试点编号 特殊性质
121 \sim 2 n6n \le 6
343 \sim 4 n20n \le 20
565 \sim 6 n50n \le 50
787 \sim 8 n500n \le 500
9109 \sim 10

0502A

未参加
状态
已结束
规则
IOI
题目
4
开始于
2026-5-2 14:00
结束于
2026-5-2 17:30
持续时间
3.5 小时
主持人
参赛人数
28