90pts求助
查看原帖
90pts求助
1198444
mengfancheng楼主2025/8/30 10:55
#include<bits/stdc++.h>
using namespace std;
int main(){
    int x,n,m;
    cin>>n>>m;
    priority_queue<int>a,b;
    for(int i=0;i<n-1;i++){
        cin>>x;
        a.push(x);
    }
    for(int i=0;i<m-1;i++){
        cin>>x;
        b.push(x);
    }
    int h=1,z=1,sum=0;
    for(int i=0;i<m+n-2;i++){
    	if(a.size()==0){
    		sum+=(n-1)*b.top();
			continue;
		} 
		if(b.size()==0){
			sum+=(m-1)*a.top();
			continue;
		}
        if(a.top()<b.top()){
            sum+=z*b.top();
            b.pop();
            h++;
        }else{
            sum+=h*a.top();
            a.pop();
            z++;
        }
    }
    cout<<sum;
}
2025/8/30 10:55
加载中...