#CF1917B. B. 删除第一个或第二个字母
B. 删除第一个或第二个字母
B. 删除第一个或第二个字母
每次测试的时间限制:1 秒
每次测试的内存限制:256 兆字节
给定一个长度为 的字符串 。定义两种可以对字符串执行的操作:
- 删除字符串的第一个字符;
- 删除字符串的第二个字符。
你的任务是找出通过对初始字符串应用任意次(可能为零次)上述操作(可按任意顺序)所能生成的所有不同非空字符串的数量。
输入
每个测试包含多个测试用例。第一行一个整数 ()——测试用例的数量。接下来是每个测试用例的描述。
每个测试用例的第一行包含 ()——字符串的长度。
第二行包含字符串 。保证字符串仅包含英文小写字母。
保证所有测试用例的 之和不超过 。
输出
对于每个测试用例,输出一个整数:可以得到的不同非空字符串的数量。
示例
输入
5
5
aaaaa
1
z
5
ababa
14
bcdaaaabcdaaaa
20
abcdefghijklmnopqrst
输出
5
1
9
50
210
注释
在第一个测试用例中,我们可以得到以下字符串:,,,,。
在第三个测试用例中,例如,单词 可以通过以下方式得到:
- 删除当前字符串 的第一个字符,得到 ;
- 删除当前字符串 的第二个字符,得到 ;
- 删除当前字符串 的第二个字符,得到 。