#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const long long N=1e7+10;
const long long M=1e3+10;
struct xx{
long long w;
long long i;
long long k;
}a[N],b[N];
void guibing(long long l,long long r){
long long mid=(l+r)/2;
if(l==r) return ;
guibing(l,mid);
guibing(mid+1,r);
long long a1=l,a2=mid+1,b1=0;
while(a1<=mid&&a2<=r){
if(a[a1].k>a[a2].k){
b[++b1]=a[a1];
a1++;
}else if(a[a1].k<a[a2].k){
b[++b1]=a[a2];
a2++;
}else if(a[a1].i<a[a2].i){
b[++b1]=a[a1];
a1++;
}else{
b[++b1]=a[a2];
a2++;
}
}
while(a1<=mid){
b[++b1]=a[a1];
a1++;
}
while(a2<=r){
b[++b1]=a[a2];
a2++;
}
for(long long i=l;i<=r;i++){
a[i]=b[i-l+1];
}
}
long long n,r,q;
int main(){
scanf("%lld%lld%lld",&n,&r,&q);
for(long long i=1;i<=n*2;i++){
//cin>>a[i].k;
scanf("%lld",&a[i].k);
a[i].i=i;
}
for(long long i=1;i<=n*2;i++){
//cin>>a[i].w;
scanf("%lld",&a[i].w);
}
guibing(1,n*2);
while(r--){
for(long long i=1;i<=n*2;i+=2){
if(a[i].w<a[i+1].w){
a[i+1].k++;
}else if(a[i].w>a[i+1].w){
a[i].k++;
}
}
guibing(1,n*2);
}
cout<<a[q].i;
return 0;
}
时间限制500ms