#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int maxn=110;
ll n,t;
double ans;
struct Node{
double m,v;
friend bool operator<(Node a,Node b){
return a.v/a.m>b.v/b.m;
}
}mon[maxn];
inline ll read(){
ll s=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}
while(ch>='0'&&ch<='9')s=s*10+ch-'0',ch=getchar();
return s*w;
}
int main(){
n=read();t=read();
for(int i=1;i<=n;i++){
mon[i]={read(),read()};
}
sort(mon+1,mon+1+n);
ll cnt=0;
while(t>0){
if(mon[++cnt].m>t){
ans+=mon[cnt].v*t/mon[cnt].m;
printf("%.2f\n",ans);
return 0;
}
t-=mon[cnt].m;
ans+=mon[cnt].v;
}
return 0;
}
RE记录