n,m=map(int,input().split())
a=list(map(int,input().split()))
b=list(map(int,input().split()))
a1=min(a)
b1=min(b)
a2=set(a)
b2=set(b)
c=a2 & b2
if len(c)>0:
print(min(c))
quit()
print(min(a1,b1)*10+max(a1,b1))
#include <bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int n,m,ans=INT_MAX;
cin >> n >> m;
int a[n+2];
int b[m+2];
for(int i=0;i<n;i++){
cin >> a[i];
}
for(int i=0;i<m;i++){
cin >> b[i];
}
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
if(a[i]==b[j]){
ans=min(ans,a[i]);
}
else{
ans=min(ans,a[i]*10+b[j]);
ans=min(ans,b[j]*10+a[i]);
}
}
}
cout << ans;
return 0;
}
898A - Rounding | 1372B - Omkar and Last Class of Math |
1025D - Recovering BST | 439A - Devu the Singer and Churu the Joker |
1323A - Even Subset Sum Problem | 1095A - Repeating Cipher |
630F - Selection of Personnel | 630K - Indivisibility |
20B - Equation | 600B - Queries about less or equal elements |
1015A - Points in Segments | 1593B - Make it Divisible by 25 |
680C - Bear and Prime 100 | 1300A - Non-zero |
1475E - Advertising Agency | 1345B - Card Constructions |
1077B - Disturbed People | 653A - Bear and Three Balls |
794A - Bank Robbery | 157A - Game Outcome |
3B - Lorry | 1392A - Omkar and Password |
489A - SwapSort | 932A - Palindromic Supersequence |
433A - Kitahara Haruki's Gift | 672A - Summer Camp |
1277A - Happy Birthday Polycarp | 577A - Multiplication Table |
817C - Really Big Numbers | 1355A - Sequence with Digits |