#include <iostream> // hdu5497
#include <cstring>
#include <stdio.h>
#include <algorithm>
using namespace std;
#define lowbit(x) x&(-x)
const int maxn = 1e5+10;
int a[maxn];
int t[2][maxn];
int n,m;
typedef long long ll;
int sum(int mode,int x)
{
int ret = 0;
for(int i=x;i>0;i-=lowbit(i))
{
ret += t[mode][i];
}
return ret;
}
void update(int mode,int x,int val)
{
for(int i=x;i<=n;i+=lowbit(i))
{
t[mode][i] += val;
}
}
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
memset(t,0,sizeof(t));
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
}
ll ans = 0;
for(int i=m+1;i<=n;i++)
{
ans += i-m-1 - sum(0,a[i]);
update(0,a[i],1);
}
ll ret = ans;
for(int i=m+1;i<=n;i++)
{
ans -= sum(0,a[i]-1);
ans -= sum(1,n)-sum(1,a[i]);
update(0,a[i],-1);
ans += sum(0,a[i-m]-1);
ans += sum(1,n)-sum(1,a[i-m]);
update(1,a[i-m],1);
ret = min(ret,ans);
}
printf("%I64d\n",ret);
}
return 0;
}