在此再次感谢 CCF 超强样例
查看原帖
在此再次感谢 CCF 超强样例
547908
NightTide楼主2021/11/15 22:35
#include<bits/stdc++.h>
#define MAXN 100010
using namespace std;
struct node{
    int num,score,w;
};
int n,r,q;
node player[2*MAXN];
bool cmp(node a,node b){
    if(a.score!=b.score) return a.score<b.score;//看出问题了吗
    else return a.num<b.num;
}
int main(){
    // freopen("swiss.in","r",stdin);
    // freopen("swiss.out","w",stdout);
    scanf("%d%d%d",&n,&r,&q);
    for(int i=1;i<=n*2;i++){
        scanf("%d",&player[i].score);
        player[i].num=i;
    }
    for(int i=1;i<=n*2;i++){
        scanf("%d",&player[i].w);
    }
    while(r--){
        sort(player+1,player+n*2+1,cmp);
        for(int i=1;i<=n;i++){
            if(player[i*2].w>player[i*2-1].w){
                player[i*2].score++;
            }else{
                player[i*2-1].score++;
            }
        }
    }
    sort(player+1,player+n*2+1,cmp);
    printf("%d\n",player[q].num);
    return 0;
}

这个代码居然能过样例!感谢 CCF 超强样例!

2021/11/15 22:35
加载中...