#include<stdio.h>
int a[200005];//排在第i位选手的编号为a[i]
int win[200005];//第i个胜利选手的编号为a[i]
int lose[200005];
int s[200005],w[200005];
int cmp(int a,int b)//判断a是否应该排在b前面
{
if(s[a]==s[b])
return a<b?1:0;
return s[a]>s[b]?1:0;
}
void merge()
{
int i=1,j=1;
a[0]=0;
while(i<=win[0]&&j<=lose[0])
{
if(cmp(win[i],lose[j])==1)
a[++a[0]]=win[i++];
else
a[++a[0]]=lose[j++];
}
while(i<=win[0])
a[++a[0]]=win[i++];
while(j<=lose[0])
a[++a[0]]=lose[j++];
}
void quicksort(int l,int r)
{
if(l>=r)
return;
int i=l,j=r;
int temp=a[l];
while(i!=j)
{
while(i<j&&cmp(temp,a[j])==1)
j--;
if(i<j)
{
a[i]=a[j];
i++;
while(i<j&&cmp(a[i],temp)==1)
i++;
if(i<j)
{
a[j]=a[i];
j--;
}
}
}
a[i]=temp;
quicksort(l,i-1);
quicksort(i+1,r);
}
int main()
{
int n,r,q;
scanf("%d %d %d",&n,&r,&q);
n*=2;
for(int i=1;i<=n;i++)
a[i]=i;
for(int i=1;i<=n;i++)
scanf("%d",&s[i]);
for(int i=1;i<=n;i++)
scanf("%d",&w[i]);
quicksort(1,n);
// for(int i=1;i<=n;i++)
// printf("%d",a[i]);
for(int i=1;i<=r;i++)
{
win[0]=0;
lose[0]=0;
for(int j=1;j<=n;j+=2)
{
if(w[a[j]]>w[a[j+1]])
{
s[a[j]]++;
win[++win[0]]=a[j];
lose[++lose[0]]=a[j+1];
}
else
{
s[a[j+1]]++;
win[++win[0]]=a[j+1];
lose[++lose[0]]=a[j];
}
}
merge();
}
printf("%d",a[q]);
}