2 3 4 5 WA
查看原帖
2 3 4 5 WA
354482
Ben幻影楼主2021/5/1 11:29
#include<bits/stdc++.h>
using namespace std;
struct node{
    int w;
    int v;
}a[101];
bool cmp(node aa,node bb){
    return aa.v*bb.w>aa.w*bb.v;
}
int n,m;
double ans=0;
int main(){
    cin>>n>>m;
    for(int i=1;i<=n;i++){
        cin>>a[i].w;
        cin>>a[i].v;
    }
    sort(a,a+n,cmp);
    for(int i=1;i<=n;i++){
        if(a[i].w<=m){
            ans+=a[i].v;
            m-=a[i].w;
        }else{
            ans+=a[i].v*m*1.0/(a[i].w*1.0);
            break;
        }
    }
    printf("%.2lf",ans);
    return 0;
}

大佬帮忙看一下

2021/5/1 11:29
加载中...