#include<bits/stdc++.h>
using namespace std;
const int MaxN=2e5;
const int MaxA=1e9;
int N, M;
int A[MaxN];
int B[MaxN];
int main(){
cin>>N>>M;
for(int n=0; n<N; n+=1)
cin>>A[n];
for(int m=0; m<M; m+=1){
cin>>B[m];
B[m]+=1;
}
// 由小到大枚舉對變化量有影響的價格
sort(A,A+N);
sort(B,B+M);
int n=0; //#seller
int m=M; //#buyer
int a=0, b=0;
while( m>n ){
int x=(b==M || a<N && A[a]<=B[b] )? A[a]:B[b];
for( ; a<N && A[a]==x; a+=1)
n+=1;
for( ; b<M && B[b]==x; b+=1)
m-=1;
if( m<=n ){
cout<<x;
return 0;
}
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNvbnN0IGludCBNYXhOPTJlNTsKY29uc3QgaW50IE1heEE9MWU5OwppbnQgTiwgTTsKaW50IEFbTWF4Tl07CmludCBCW01heE5dOwoKaW50IG1haW4oKXsKCWNpbj4+Tj4+TTsKCWZvcihpbnQgbj0wOyBuPE47IG4rPTEpCgkJY2luPj5BW25dOwoJZm9yKGludCBtPTA7IG08TTsgbSs9MSl7CgkJY2luPj5CW21dOwoJCUJbbV0rPTE7Cgl9CgkKCS8vIOeUseWwj+WIsOWkp+aemuiIieWwjeiuiuWMlumHj+acieW9semfv+eahOWDueagvAoJc29ydChBLEErTik7Cglzb3J0KEIsQitNKTsKCWludCBuPTA7IC8vI3NlbGxlcgoJaW50IG09TTsgLy8jYnV5ZXIKCWludCBhPTAsIGI9MDsKCXdoaWxlKCBtPm4gKXsKCQlpbnQgeD0oYj09TSB8fCBhPE4gJiYgQVthXTw9QltiXSApPyBBW2FdOkJbYl07CgkJZm9yKCA7IGE8TiAmJiBBW2FdPT14OyBhKz0xKQoJCQluKz0xOwoJCWZvciggOyBiPE0gJiYgQltiXT09eDsgYis9MSkKCQkJbS09MTsKCQlpZiggbTw9biApewoJCQljb3V0PDx4OwoJCQlyZXR1cm4gMDsKCQl9Cgl9Cn0=