B 型字符串问题
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
B 型字符串问题
时间限制:2s
空间限制:256MB
题目描述
如果一个字符串仅由字符c
、d
、m
和n
组成,则称其为 型字符串。给定长度为 的 型字符串 ,我们必须执行以下操作一次:选择一个非空子串 到 ,将其完全进行 式修改。
正式地,设 为字符串 中的第 个字符。在将起始位置为 、结束位置为 的子串完全进行 式修改()后,字符串 将变为长度为 的字符串 ,满足下面的等式,其中 表示字符串 中的第 个字符:
- ,如果 或者
- ,如果 并且
- ,如果 并且
- ,如果 并且
- ,如果 并且
在进行操作后,我们能得到多少不同的字符串?
输入格式
有多个测试用例。输入的第一行包含一个整数 ,表示测试用例的数量。对于每个测试用例:
第一行是一个 型字符串 ()。
保证所有测试用例中字符数 的总和不超过 。
输出格式
对于每个测试用例,输出一行,包含一个整数,表示在执行一次操作后可以得到的不同字符串数量。
样例 #1
样例输入 #1
2
cdmn
cm
样例输出 #1
8
2
数据范围
对于 50% 的测试数据,满足 ;
对于全部的测试数据,满足 ,保证所有测试用例中字符数 的总和不超过 。
提示
样例解释:
$$\begin{array}{|c|c||c|c|}\hline \textbf{Substring} & \textbf{Result} & \textbf{Substring} & \textbf{Result} \\ \hline c & cdmn & dm & cmnn \\ \hline d & cnmn & mn & cddm \\ \hline m & cdmn & cdm & mncn \\ \hline n & cdmd & dmn & cdmn \\ \hline cd & ncmn & cdmn & dmnc \\ \hline \end{array} $$容易发现,在执行操作后,我们可以得到 m 个不同的字符串。