问题标题: 酷町堂:市赛最后一题求订正

0
0
李錡祾
李錡祾
修练者
修练者

#include<bits/stdc++.h>
using namespace std;
const int N=110100;
long long a[N],b[N];
bool cmp(long long a,long long b){
    return a>b;
}
deque<long long>l,r;
int main(){    
//1 3
//2 1
    long long i,j,n,sum=0,sum1=0,box=0;
    cin>>n;
    for(i=0;i<n;i++)cin>>a[i];
    for(i=0;i<n;i++)cin>>b[i];
    sort(a,a+n);    
    sort(b,b+n,cmp);
    for(i=0;i<n;i++)l.push_back(a[i]);
    for(i=0;i<n;i++)r.push_back(b[i]);
    for(i=0;i<n;i++){
        if(l.front()<=r.back()){
            sum-=50;
            l.pop_front();
            r.pop_front();
        }
        else if(l.front()>r.back()){
            sum+=50;
            l.pop_front();
            r.pop_back();
        }
    }
    for(i=0;i<n;i++){
        if(a[i]>b[i])sum1+=50;
    }
    cout<<max(max(box,sum),sum1);
    return 0;
}

市赛的最后一题70分哪里有问题


0
汪恺恒
汪恺恒
中级启示者
中级启示者

两个数组都要从大到小排序

0
0
0
我要回答