#include<bits/stdc++.h>
using namespace std;
const int N = 5e5 + 5;
int t,n,l,arr[N],vis[N];
long long number;
bool check(int l,int r)
{
for(int s = l;s<=r-1;s++)
if(arr[s] == arr[s+1]) return 1;
return 0;
}
bool numx(int x)
{
int cnt = 0;
for(int i = 1;i<=n;i++)
if(vis[i]) cnt++;
return cnt == x;
}
void ans(int x)
{
memset(vis,0,4 * N);
for(int i = 1,j = 1;i<=n;i++)
{
if(j - 2 + x > n) return ;
int flag = 0;
vis[arr[i]]++;
while(j <= i && numx(x))
{
flag = 1;
vis[arr[j]] --;
j++;
}
if(flag)
{
if(arr[i] == arr[j - 1]) continue;
else if(check(j-1,i)) continue;
else number++;
}
}
}
int main()
{
scanf("%d",&t);
while(t--)
{
scanf("%d %d",&n,&l);
for(int i = 1;i<=n;i++)
scanf("%d",&arr[i]);
number = 0;
l = l == 1?2 : l;
for(int i = l;i<=n;i++)
ans(i);
printf("%lld\n",number);
}
return 0;
}