- 瑞士轮
 - @ 2018-03-27 17:35:44
 
#include <iostream>
#include <algorithm>
using namespace std;
struct Node{
    int score;
    int num;
    int sl;
}a[200005];
bool cmp(const Node &b,const Node &c){
     if(b.score==c.score)return b.num<c.num;
     return b.score>c.score;
}
int main(){
    ios::sync_with_stdio(false);
    cin.tie(0);
    
    int n,r,q;
    cin>>n>>r>>q;
    for(int i=1;i<=2*n;i++){
        cin>>a[i].score;
        a[i].num=i;
    }
    for(int i=1;i<=2*n;i++){
        cin>>a[i].sl;
    }
    sort(a+1,a+2*n+1,cmp);
    for(int i=1;i<=r;i++){
        for(int j=1;j<=2*n;j+=2){
            if(a[j].sl>a[j+1].sl){
                a[j].score++;
            }
            else {
                a[j+1].score++;
            }
        }
        sort(a+1,a+2*n+1,cmp);
    }
    cout<<a[q].num;
    
    return 0;
}
在vijos上居然过了
0 条评论
  
  目前还没有评论...