AcWing 447. 瑞士轮(纯STL写法)
原题链接
简单
作者:
0scar
,
2024-10-03 14:37:45
,
所有人可见
,
阅读 12
#pragma GCC optimize(2)
#include<bits/stdc++.h>
using namespace std;
struct node{
int s,name,w;
}a[2000005];
int n,r,q;
bool cmp(node x,node y){
if(x.s!=y.s)return x.s>y.s;
return x.name<y.name;
}
int main(){
cin.tie();cout.tie();
ios::sync_with_stdio(0);
cin>>n>>r>>q;
for(int i=1;i<=2*n;++i){
cin>>a[i].s;
a[i].name=i;
}
for(int i=1;i<=2*n;++i){
cin>>a[i].w;
}
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].w>a[j+1].w) a[j].s++;
else if(a[j].w!=a[j+1].w) a[j+1].s++;
}
stable_sort(a+1,a+2*n+1,cmp);//排序
}
cout<<a[q].name;
return 0;
}