#2134231397. [NOIP 2020]字符串匹配

内存限制:256 MiB 时间限制:1000 ms 输入文件:string.in 输出文件:string.out
题目类型:传统 评测方式:文本比较
上传者: j27eGU

题目描述

一. 题目概况

中文题目名称 字符串匹配
英文题目与子目录名
可执行文件名
输入文件名
输出文件名
每个测试点时限
测试点数目
测试点分值
附加样例文件
结果比较方式 全文比较(过滤行末空格)
题目类型 传统
运行内存上限

二. 提交源程序文件名

对于C++语言
对于C语言
对于pascal语言

2.字符串匹配

()

小 C 学习完了字符串匹配的相关内容,现在他正在做一道习题。

对于一个字符串 ,题目要求他找到 的所有具有下列形式的拆分方案数:

,其中 均是非空字符串,且 中出现奇数次的字符数量不超过 中出现奇数次的字符数量。

更具体地,我们可以定义 表示两个字符串 相连接,例如 ,则

并递归地定义 且为正整数)。例如 ,则

则小 C 的习题是求 的方案数,其中 表示字符串 中出现奇数次的字符的数量。两种方案不同当且仅当拆分出的 中有至少一个字符串不同。

小 C 并不会做这道题,只好向你求助,请你帮帮他。

输入格式

本题有多组数据,输入文件第一行一个正整数 表示数据组数。

每组数据仅一行一个字符串 ,意义见题目描述。 仅由英文小写字母构成。

输出格式

对于每组数据输出一行一个整数表示答案。

样例

样例#1

输入样例#1

3
nnrnnr
zzzaab
mmlmmlo

输出样例#1

8
9
16

样例#2

输入样例#2

5
kkkkkkkkkkkkkkkkkkkk
lllllllllllllrrlllrr
cccccccccccccxcxxxcc
ccccccccccccccaababa
ggggggggggggggbaabab

输出样例#2

156
138
138
147
194

样例#3

输入样例#3

见附件中的 string/string3.in

输出样例#3

见附件中的 string/string3.ans

样例#4

输入样例#4

见附件中的 string/string4.in

输出样例#4

见附件中的 string/string4.ans

数据范围与提示

说明/提示

【样例 #1 解释】

对于第一组数据,所有的方案为

【数据范围】

测试点编号 特殊性质
中只包含一种字符
中只包含两种字符

对于所有测试点,保证

原题链接:https://luogu.com.cn/problem/P7114