我是死也改不出来
#include<bits/stdc++.h>
using namespace std;
struct stu{
double m,v;
}a[105];
int cnt,n,t;
double ans;
bool cmp(stu a,stu b){
return a.v * b.m > b.v * a.m;
}
int main(){
cin >> n >> t;
for(int i = 1;i <= n;i++)
cin >> a[i].m >> a[i].v;
sort(a+1,a+n+1,cmp);
if(n == 0){cout << "0.00";return 0;}
else for(int i = 1;i <= n;i++){
if(t < a[i].m){
cnt = i;
break;
}
t -= a[i].m;
ans += a[i].v;
}
ans += min((double)t,a[cnt].m) * a[cnt].v / a[cnt].m;
printf("%.2f",ans);
return 0;
}