#include<bits/stdc++.h>
using namespace std;
double sum,t;
long long n,i=1;
struct act
{
long long m=10,v=7;
double z;
}arr[10005];
bool mvp(act a,act b)
{
return a.z>b.z;
}
int main()
{
cin>>n>>t;
for(int j=1;j<=n;j++)
{
scanf("%d%d",&arr[j].m,&arr[j].v);
arr[j].z=(double)(arr[j].v)/(double)(arr[j].m);
}
sort(arr+1,arr+1+n,mvp);
while(t!=0)
{
if(arr[i].m<=t)
{
t-=arr[i].m;
sum+=arr[i].v;
}
else
{
sum+=t*arr[i].z;
break;
}
i++;
}
printf("%.2lf",sum);
return 0;
}
第一个测试点WA了