#CF1917B. B. 删除第一个或第二个字母

B. 删除第一个或第二个字母

B. 删除第一个或第二个字母
每次测试的时间限制:1 秒
每次测试的内存限制:256 兆字节

给定一个长度为 nn 的字符串 ss。定义两种可以对字符串执行的操作:

  • 删除字符串的第一个字符;
  • 删除字符串的第二个字符。

你的任务是找出通过对初始字符串应用任意次(可能为零次)上述操作(可按任意顺序)所能生成的所有不同非空字符串的数量。

输入
每个测试包含多个测试用例。第一行一个整数 tt1t1041 \le t \le 10^4)——测试用例的数量。接下来是每个测试用例的描述。

每个测试用例的第一行包含 nn1n1051 \le n \le 10^5)——字符串的长度。
第二行包含字符串 ss。保证字符串仅包含英文小写字母。

保证所有测试用例的 nn 之和不超过 2×1052 \times 10^5

输出
对于每个测试用例,输出一个整数:可以得到的不同非空字符串的数量。

示例
输入

5
5
aaaaa
1
z
5
ababa
14
bcdaaaabcdaaaa
20
abcdefghijklmnopqrst

输出

5
1
9
50
210

注释
在第一个测试用例中,我们可以得到以下字符串:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

在第三个测试用例中,例如,单词 baba 可以通过以下方式得到:

  • 删除当前字符串 ababaababa 的第一个字符,得到 babababa
  • 删除当前字符串 babababa 的第二个字符,得到 bbabba
  • 删除当前字符串 bbabba 的第二个字符,得到 baba