10pts求调
查看原帖
10pts求调
1054686
XuOuXiao1024楼主2024/5/14 06:49
#include<bits/stdc++.h>
using namespace std;
const int BUFSIZE=1<<20;
char ibuf[BUFSIZE],*is=ibuf,*it=ibuf;
char getc(){
    if(is==it)
        it=(is=ibuf)+fread(ibuf,1,BUFSIZE,stdin);
    return is==it?EOF:*is++;
}
int reads(){
    int ret=0;
    bool sign=0;
    char ch=getc();
    while(!isdigit(ch)){
        sign|=ch=='-';
        ch=getc();
    }
    while(isdigit(ch)){
        ret=ret*10+ch-'0';
        ch=getc();
    }
    return sign?-ret:ret;
}
int n,r,q;
struct stu{
    int s,w,no;
}peo[200005];
bool cmp(stu a,stu b){
    return a.s>b.s;
}
int main(){
    n=reads(),r=reads(),q=reads();
    for(int i=1;i<=n+n;i++) peo[i].s=reads(),peo[i].no=i;
    for(int i=1;i<=n+n;i++) peo[i].w=reads();
    while(r--){
        for(int i=1;i<=n;i+=2){
            if(peo[i].w>peo[i+1].w) peo[i].s++;
            else peo[i+1].s++;
        }
        sort(peo+1,peo+n+n+1,cmp);
    }
    cout<<peo[q].no<<endl;
    return 0;
}

https://www.luogu.com.cn/record/158736447

2024/5/14 06:49
加载中...