A5265 | 午枫的创造
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
小枫现在有一个包含 $n$ 个元素的字符串序列 $a$ ,且序列 $a$ 中的每个字符串中都只包含不重复的前 $m$ 个小写字母,且不为空,小午想要创造满足如下条件的字符串序列 $b$:
+ 序列 $b$ 包含的字符串个数为 $n$ ,且序列 $b$ 中的每个字符串中都只包含不重复的前 $m$ 个小写字母(可以为空串);
+ 恰好存在一个 $i$,使得 $1 \le i \le n$ 且 $a_i \neq b_i$。这里 $a_i\neq b_i$ 指的是一个字符串中的某一种字符在另一个字符串中未出现。
+ 定义 $C_{s}$ 为字符串 $s$ 中所有字符组成的集合,例如 $C_{"bdccab"}=\{a,b,c,d\}$。对于所有 $1\leq l<r\leq n$ ,均有 $C_{a_l+a_{l+1}+...+a_r}=C_{b_l+b_{l+1},...+b_r}$ 。这里 $a+b$ 指的是将字符串 $b$ 拼接到字符串 $a$ 后。
小午想知道他能够创造出多少个合法的字符串序列 $b$ 。
+ 序列 $b$ 包含的字符串个数为 $n$ ,且序列 $b$ 中的每个字符串中都只包含不重复的前 $m$ 个小写字母(可以为空串);
+ 恰好存在一个 $i$,使得 $1 \le i \le n$ 且 $a_i \neq b_i$。这里 $a_i\neq b_i$ 指的是一个字符串中的某一种字符在另一个字符串中未出现。
+ 定义 $C_{s}$ 为字符串 $s$ 中所有字符组成的集合,例如 $C_{"bdccab"}=\{a,b,c,d\}$。对于所有 $1\leq l<r\leq n$ ,均有 $C_{a_l+a_{l+1}+...+a_r}=C_{b_l+b_{l+1},...+b_r}$ 。这里 $a+b$ 指的是将字符串 $b$ 拼接到字符串 $a$ 后。
小午想知道他能够创造出多少个合法的字符串序列 $b$ 。
两个字符串序列 $A$ 和 $B$ 不同,当且仅当存在一个位置 $i$,$C_{A_i}\neq C_{B_i}$
输入格式
本题包含多组输入,第一行输入一个正整数 $T(1\leq T\leq 10^4)$ ,表示测试用例的数量。
对于每个测试用例,第一行输入两个正整数 $n,m(2\leq n\leq 2\times10^5, 1\leq m\leq26)$ ,含义如上文所示。
接下来一行,输入 $n$ 个只包含前 $m$ 个小写字母的字符串 $a_1,\dots,a_n$,含义如上文所示。
保证所有测试用例的 $n$ 之和不超过 $2\times10^5$ 。
对于每个测试用例,第一行输入两个正整数 $n,m(2\leq n\leq 2\times10^5, 1\leq m\leq26)$ ,含义如上文所示。
接下来一行,输入 $n$ 个只包含前 $m$ 个小写字母的字符串 $a_1,\dots,a_n$,含义如上文所示。
保证所有测试用例的 $n$ 之和不超过 $2\times10^5$ 。
输出格式
对于每一个测试用例,输出一个整数,表示合法的字符串序列 $b$ 的数量。
输入输出样例
输入 #1
1 3 2 a b ab
输出 #1
3
样例解释
三种可能的序列分别为
{
ab ,b, ab}{
a ,ab, ab}{
a ,b, a}
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?