****after correcting
```c
#include<bits/stdc++.h>
using namespace std;
struct wtf{
int how_strong_they_are,number,score;
}a[100010];
int main()
{
int n,r,q;
cin>>n>>r>>q;
for(int i=1;i<=2*n;i++)cin>>a[i].score;
for(int i=1;i<=2*n;i++)cin>>a[i].how_strong_they_are;
for(int i=1;i<=2*n;i++)a[i].number=i;
for(int k=1;k<=r;k++)
{
for(int i=1;i<=2*n;i++)
{
int tmp=i;
for(int j=i;j<=2*n;j++)if(a[tmp].score<a[j].score||(a[tmp].score==a[j].score&&a[tmp].number>a[j].number))tmp=j;
if(tmp!=i){
wtf p=a[tmp];
a[tmp]=a[i];
a[i]=p;
}
}
// cout<<a[q].number<<endl;
for(int i=1;i<=n;i++)
{
if(a[2*i-1].how_strong_they_are<a[2*i].how_strong_they_are)a[2*i].score++;
else a[2*i-1].score++;
// printf("%d against %d \n",a[2*n-1].number,a[2*n].number);
}
}
for(int i=1;i<=2*n;i++)
{
int tmp=i;
for(int j=i;j<=2*n;j++)if(a[tmp].score<a[j].score||(a[tmp].score==a[j].score&&a[tmp].number>a[j].number))tmp=j;
if(tmp!=i){
wtf p=a[tmp];
a[tmp]=a[i];
a[i]=p;
}
}
cout<<a[q].number<<endl;
}
```
by dyzxjzx @ 2019-01-30 21:14:48
****再改了之后
```c
#include<bits/stdc++.h>
using namespace std;
struct wtf{
int how_strong_they_are,number,score;
// bool operator < (const wtf &x)const
// {
// if(score<x.score||(score==x.score&&number<x.number))return true;
// else return false;
// }
}a[100010];
wtf as[100010],bs[100010];
int n,r,q,i;
void MERGE_SORT()
{
int tot=0,l=1,r=1;
while(l<=n&&r<=n){
if(as[l].score>bs[r].score||(as[l].score==bs[r].score&&as[l].number<bs[r].number))
{
a[++tot]=as[l];
l++;
}else{
a[++tot]=bs[r];
r++;
}
}
while(l<=n)a[++tot]=as[l++];
while(r<=n)a[++tot]=bs[r++];
return ;
}
int main()
{
cin>>n>>r>>q;
for(i=1;i<=2*n;i++)cin>>a[i].score;
for(i=1;i<=2*n;i++)cin>>a[i].how_strong_they_are;
for(i=1;i<=2*n;i++)a[i].number=i;
for(i=1;i<=2*n;i++)
{
int tmp=i;
for(long long int j=i;j<=2*n;j++)
if(a[tmp].score<a[j].score||(a[tmp].score==a[j].score&&a[tmp].number>a[j].number))tmp=j;
if(tmp!=i){
wtf p=a[tmp];
a[tmp]=a[i];
a[i]=p;
}
}
// sort(a,a+2*n);
for(int k=1;k<=r;k++)
{
for(i=1;i<=n;i++)
{
if(a[2*i-1].how_strong_they_are<a[2*i].how_strong_they_are)a[2*i].score++;
else a[2*i-1].score++;
int a1=0,b1=0;
for(int j=1;j<=2*n;j+=2)as[++a1]=a[j];
for(int j=2;j<=2*n;j+=2)bs[++b1]=a[j];
MERGE_SORT();
}
}
cout<<a[q].number<<endl;
}
```
by dyzxjzx @ 2019-01-31 09:17:30
~~鬼畜的变名~~
by 厂长 @ 2019-03-19 15:08:06