朱泽睿 • 1年前
using namespace std; int a[10020],cnt; struct bao_wu{
int w;
int v;
double p;
}bw[10001]; int cmp(bao_wu a,bao_wu b){
return a.p>b.p;
} int main(){
int n,c;
double sum=0;
cin>>n>>c;
for(int i=0;i<n;i++){
cin>>bw[i].w>>bw[i].v;
bw[i].p=1.0*bw[i].v/bw[i].w;
}
sort(bw,bw+n,cmp);
for(int i=0;i<n;i++){
if(bw[i].w<=c){
sum=sum+bw[i].v;
c=c-bw[i].w;
}
else{
sum=sum+c*bw[i].p;
break;
}
}
printf("%.1lf",sum);
return 0;
}
评论: