求大佬看看
查看原帖
求大佬看看
1430556
ht_wu楼主2024/9/21 11:04
#include <iostream>
#include <algorithm>
using namespace std;
struct gold{
    double weight,value;
    double average;
}w[1001];
int cmp(gold a,gold b){
    return a.average>b.average;
}
int main(){
    int n;
    double t;
    cin>>n>>t;
    for(int i=0;i<n;i++){
        cin>>w[i].weight>>w[i].value;
        w[i].average=(w[i].value*1.0)/(w[i].weight*1.0);
    }
    sort(w,w+n,cmp);
    double sum=0;
    for(int i=0;i<n;i++){
        if(t>=w[i].weight){
            t-=w[i].weight;
            sum+=w[i].value;
            cout<<sum<<endl;
        }else{
            sum+=t*w[i].average;
            cout<<sum<<endl;
            break;
        }
    }
    printf("%.2f",sum);
    return 0;
}
2024/9/21 11:04
加载中...