20pts求助(壶关)
查看原帖
20pts求助(壶关)
995569
L__B楼主2024/9/25 21:49
#include<bits/stdc++.h>
using namespace std;
struct bz{
    int m,v; double jz;
}a[101];
bool cmp(bz x,bz y){
    return x.jz>y.jz;
}
int n,t,i; double s;
int main(){
    scanf("%d%d",&n,&t);
    for(i=1;i<=n;i++){
        scanf("%d%d",&a[i].m,&a[i].v);
        a[i].jz=a[i].v/a[i].m;
    }
    sort(a+1,a+1+n,cmp);
    for(i=1;i<=n;i++){
        if(t<a[i].m) break;
        t-=a[i].m;
        s+=a[i].v;
    }
    if(t>0) s+=t*a[i].jz;
    printf("%.2lf",s);
    return 0;
}
2024/9/25 21:49
加载中...