#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 51000
int cmp(const void *a,const void *b) {
return *(int *)a-*(int *)b;
}
int a[N];
int sum[N];
double all[N];
double ss(int a,double b) {
return (1.0*a-b)*(1.0*a-b);
}
double Min(double a,double b) {
return a>b?b:a;
}
int main() {
int n,m,i,t;
double ans,maxx;
scanf("%d",&t);
while(t--) {
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
qsort(a+1,n,sizeof(a[0]),cmp);
sum[0]=0;
for(i=1;i<=n;i++)
sum[i]=sum[i-1]+a[i];
for(i=1;i<=m+1;i++)
all[i]=1.0*(sum[i+n-m-1]-sum[i-1])/(n-m);
// printf("%d
",sum[n-m]);
// printf("%.10f
",all[1]);
ans=0;
for(i=1;i<=n-m;i++)
ans+=1.0*ss(a[i],all[1]);
maxx=ans;
// printf("%.10f
",maxx);
for(i=2;i<=m+1;i++) {
ans=ans-2.0*(sum[i+n-m-2]-sum[i-1])*(all[i]-all[i-1])-1.0*ss(a[i-1],all[i-1])+1.0*ss(a[i+n-m-1],all[i])+(n-m-1)*(all[i]*all[i]-all[i-1]*all[i-1]);
maxx=Min(maxx,ans);
}
printf("%.10f
",maxx);
}
return 0;}