有佬帮我看看么,全改double了,寄第二个属实抽象
查看原帖
有佬帮我看看么,全改double了,寄第二个属实抽象
1562283
Mikumikumi123楼主2025/1/21 23:39

有佬帮我看看么,全改double了,寄第二个属实抽象

#include<iostream>
using namespace std;
#include<vector>
#include<unordered_map>
#include<algorithm>
int main() {
    double n, t;
    cin >> n >> t;
    vector<double>f;
    unordered_map<double, int>mp;
    for (int i = 0;i < n;i++) {
        double w, v;
        cin >> w >> v;
        double x = 1.0*v / w;
        mp[x] = w;
        f.push_back(x);
    }
    double sum=0;
    sort(f.begin(), f.end());
    for (int i = f.size() - 1;i >= 0;i--) {
        if (t > mp[f[i]]) {
            sum += f[i] * mp[f[i]];
            t -= mp[f[i]];
        }
        else {
            sum += t *f[i];
            break;
        }
    }
    printf("%.2f", sum);
    return 0;
}
2025/1/21 23:39
加载中...