洛谷_P1650 田忌赛马_deque

洛谷_P1650 田忌赛马_deque

//
#include<bits/stdc++.h>
using namespace std;

const int N=2222;
int in[N];

deque<int> d1,d2;

int main()
{
    int n,i,ans,tt;
    cin>>n;

    for( i=0;i<n;i++ ) cin>>in[i];
    sort( in,in+n );
    for( i=0;i<n;i++ ) d1.push_back( in[i] );
    
    for( i=0;i<n;i++ ) cin>>in[i];
    sort( in,in+n );
    for( i=0;i<n;i++ ) d2.push_back( in[i] );

    ans=tt=0;
    while( !d1.empty() )
    {
        if( d1.back()>d2.back() ) { ans++; d1.pop_back(); d2.pop_back(); continue; }
        if( d1.front()>d2.front() ) { ans++; d1.pop_front(); d2.pop_front(); continue; }
        if( d1.front()>d2.back() ) ans++;
        else if( d1.front()<d2.back() ) tt++;       // 相等时不交钱
        d1.pop_front(); d2.pop_back();
    }
    cout<<200*( ans-tt )<<endl;
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_63173957/article/details/124955365