#S1110c. 统计

统计

题目描述

给定一个数列 AA,数列的元素取值范围为 [1,m][1,m]

请计算有多少个非空子区间满足以下条件:该区间内每个元素的出现次数都相同(没有出现的元素视为出现 00 次)。

例如,当 m=3m=3 时,[1,2,3][1,2,3][1,1,3,2,3,2][1,1,3,2,3,2] 是满足条件的区间,而 [1,2,2,3][1,2,2,3][1,1,3,3][1,1,3,3] 不满足条件。

请计算数列 AA 的满足条件的非空子区间数量。

输入格式

包含多组测试数据,第一行一个正整数 TT 代表数据组数。

每组数据两行,第一行两个整数 n,mn, m,代表序列长度和元素值域。

第二行 nn 个整数,代表该序列,保证序列中的元素在 [1,m][1, m] 之间。

输出格式

TT 行,每行一个整数,代表对应组数数据的序列的满足条件的非空子区间个数。

样例

样例输入 1

1
6 3
1 2 3 1 2 3

样例输出 1

5

样例解释 1

[1,3],[2,4],[3,5],[4,6],[1,6][1, 3], [2, 4], [3, 5], [4, 6], [1, 6]55 个。

样例输入 2

1
10 4
1 1 2 4 3 2 4 3 2 1

样例输出 2

3

样例解释 2

[2,5],[1,8],[7,10][2, 5], [1, 8], [7, 10]33 个。

更多样例

见附加文件。

数据范围与提示

对于 100%100 \% 的数据, $1 \leq T \leq 5,1 \leq n \leq 10^6, 1 \leq m \leq n$。

测试点 nn mm
1 50\leq 50
2 300\leq 300
3 3000\leq 3000
4 7000\leq 7000
5,6,75,6,7 7×104\leq 7 \times 10^4 300\leq 300
8 3×105\leq 3 \times 10^5
9,10 106\leq 10^6