请教各位大佬为什么只有20分
#include<iostream>
using namespace std;
int bag,n;
int v[105],w[105];
double aver[105],t,tr,wei;
int main()
{
cin>>n>>bag;
for(int i=1;i<=n;i++)
{
cin>>w[i]>>v[i];
aver[i]=v[i]/w[i];
}
for(int i=1;i<n;i++)
{
for(int j=i+1;j<=n;j++)
{
if(aver[i]<aver[j])
{
t=aver[i];
aver[i]=aver[j];
aver[j]=t;
t=v[i];
v[i]=v[j];
v[j]=t;
t=w[i];
w[i]=w[j];
w[j]=t;
}
}
}
int i=1;
while(bag>=w[i]&&i<=n)
{
bag-=w[i];
tr+=v[i];
i++;
}
tr+=bag*aver[i];
printf("%.2lf",tr);
return 0;
}