#include<bits/stdc++.h>
using namespace std;
const int N=505;
int n,k;
double dp[N][N],sum[N][N];
struct state{
double a,b;
}s[N],t[N];
bool cmpa(state x,state y){
return x.a<y.a;
}
bool cmpb(state x,state y){
return x.b<y.b;
}
int main(){
cin >> n >> k;
for(int i=1;i<=n;i++){
cin >> s[i].a >> s[i].b;
if(s[i].b < 0) s[i].b=1e18;
}
sort(s+1,s+n+1,cmpb);
for(int i=n;i>=1;i--){
for(int j=1;j<=n;j++) t[j]=s[j];
sort(t+i+1,t+n+1,cmpa);
for(int j=1;j<=n-i+1;j++) sum[i][j]=sum[i][j-1]+t[i+j-1].a;
}
double ans=1e18;
for(int b=0;b<k;b++){
memset(dp,0x7f,sizeof(dp));
dp[0][0]=0.0;
for(int i=1;i<=k;i++){
double cst=double(s[i].a/(b+1));
dp[i][0]=dp[i-1][0]+cst;
for(int j=1;j<=i;j++)
dp[i][j]=min(dp[i-1][j-1]+double(s[i].b/j),dp[i-1][j]+cst);
}
for(int i=0;i<=k;i++) ans=min(ans,dp[i][b]+double(sum[i+1][k-i]/(b+1)));
}
printf("%.15lf",ans);
return 0;
}