#include<iostream>
#include<algorithm>
using namespace std;
double c;
double mid,ans;
int n,m,t,num;
int map[100005],note[100005],x[100005];
int f(int k);
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>map[i];
}
sort(map+1,map+n+1);
double l=0,r=map[n]-map[1];
float s=0.001;
while(r-l>s){
mid=(l+r)/2;
if(f(1)==1){
ans=mid;
l=mid;
}
else{
ans=mid;
r=mid;
}
}
int anss=ans*1000;
cout<<anss;
}
int f(int e){
for(int j=1;j<=n;j++){
x[j]=map[j]-mid;
}
for(int f=1;f<=n;f++){
note[f]=x[f-1]+x[f];
}
for(int a=1;a<=n;a++){
for(int b=1;b<=a;b++){
if(note[a]-note[b-1]>=0&&a-(b-1)>=m){
return 1;
}
}
}
}