1点AC,其余WA 555
查看原帖
1点AC,其余WA 555
1216519
Zichen14楼主2024/6/8 22:19
#include <bits/stdc++.h>
using namespace std;

int n;
double t, M[105], V[105];
double Mo[105], sum;

bool cmp(double x, double y){
	return x > y;
}

int main(){
    cin >> n >> t;
    for(int i = 1; i <= n; i++){
        double m, v;
        cin >> m >> v;
        Mo[i] = v / m;
        M[i] = m;
        V[i] = v;
    }
    sort(Mo + 1, Mo + n + 1, cmp);
    for(int i = 1; i <= n; i++){
        if(t - M[i] > -0.000001){
        	t -= M[i];
        	sum += V[i];
		} 
		else{
			sum += t * Mo[i];
			break;
		}
    }
    printf("%.2lf", sum);
    return 0;
}
2024/6/8 22:19
加载中...