过了样例但是全wa
查看原帖
过了样例但是全wa
682780
ykc1146187241楼主2023/3/19 13:03

#include<iostream>
#include<algorithm>
using namespace std;
int main() {
    double n;
    double v;
    cin >> n;
    cin >> v;
    double  a[3][100]={};
    for(int i=0;i<n;i++){
        cin>>a[0][i];
        cin>>a[1][i];
        a[2][i]=a[1][i]/a[0][i];
    }
    for(int i=0;i<n;i++){
        for(int j=n-1;j>i;j--){
            if(a[2][j]<a[2][j+1]){
                int temp,temp1,temp2;
                temp=a[0][j];
                a[0][j]=a[0][j+1];
                a[0][j+1]=temp;
                temp1=a[1][j];
                a[1][j]=a[1][j+1];
                a[1][j+1]=temp1;
                temp2=a[2][j];
                a[2][j]=a[2][j+1];
                a[2][j+1]=temp2;
            }
        }
    }
    double weight=0;
    double value=0;
    int i=0;
while(weight+a[0][i]<v){
    weight+=a[0][i];
    value+=a[1][i];
    i++;
}
value+=(v-weight)*a[1][i]/a[0][i];
   cout<<value;
    return 0;
}
2023/3/19 13:03
加载中...