#include<bits/stdc++.h>
using namespace std;
#define ll long long
struct bager{
ll m,v,how=0;
double value;
};
int main() {
bager bag[100];
ll n,t,ba=0;
double ans=0;
cin>>n>>t;
for(ll i=0;i<n;i++)
{
cin>>bag[i].m>>bag[i].v;
bag[i].value=bag[i].v*1.0/bag[i].m;
}
while(ba!=t)
{
ll you;
double maxn=-1;
for(ll i=0;i<n;i++)
{
if(bag[i].how==0&&maxn<=bag[i].value)
{
you=i;
maxn=bag[i].value;
}
}
bag[you].how=1;
ans+=min(t-ba,bag[you].m)*bag[you].value;
ba+=min(t-ba,bag[you].m);
}
printf("%.2lf",ans);
return 0;
}
样例过了,不知道问题出在哪