#P15733. [JAG 2024 Summer Camp #2] Expression Sum

[JAG 2024 Summer Camp #2] Expression Sum

说明

给定一个字符串 SSSS 中的每个字符是 0123456789+()\texttt{0123456789+()}? 中的一个。

TT 为将 SS 中的每个 ?\texttt{?} 替换为 0123456789+()\texttt{0123456789+()} 中的一个字符后形成的字符串。定义 eval(T)\text{eval}(T) 如下:

  • 如果 TT 是一个合法表达式,则其值为将 TT 作为表达式求值得到的结果。
  • 如果 TT 不是一个合法表达式,则其值为 00

计算所有可能的替换方式(即将 SS 中的每个 ?\texttt{?} 替换为 0123456789+()\texttt{0123456789+()} 中的一个字符)所对应的 eval(T)\text{eval}(T) 之和,并将结果对 998,244,353998,244,353 取模后输出。

合法表达式由以下 BNF 定义:

$$\begin{aligned} \texttt{} &\ ::= \ \texttt{} \ \texttt{"+"} \ \texttt{} \ | \ \texttt{} \\ \texttt{} &\ ::= \ \texttt{"("} \ \texttt{} \ \texttt{")"} \ | \ \texttt{} \\ \texttt{} &\ ::= \ \texttt{} \ \texttt{} \ | \ \texttt{} \\ \texttt{} &\ ::= \ \texttt{} \ \texttt{} \ | \ \texttt{} \\ \texttt{} &\ ::= \ \texttt{"0"} \ | \ \texttt{} \\ \texttt{} &\ ::= \ \texttt{"1"} \ | \ \texttt{"2"} \ | \ \texttt{"3"} \ | \ \texttt{"4"} \ | \ \texttt{"5"} \ | \ \texttt{"6"} \ | \ \texttt{"7"} \ | \ \texttt{"8"} \ | \ \texttt{"9"} \end{aligned}$$

输入格式

输入以如下格式给出:

SS
  • 1S3,0001 \leq |S| \leq 3,000
  • SS 的每个字符是 0123456789+()\texttt{0123456789+()}? 中的一个。

输出格式

输出答案。

?1?
46306
20???0+2??
651059511

提示

翻译由 DeepSeek V3.2 完成