#include<bits/stdc++.h>
using namespace std;
const long long MAXx=500050;
long long a[MAXx];
long long n,x,m,sum;
long long b[MAXx];
bool check(long long k){
long long l=1,r=m,mid;
while(l<=r){
mid=(l+r)/2;
if(k<b[mid]){
r=mid-1;
}
else if(k>b[mid]){
l=mid+1;
}
else{
return 1;
}
}
return 0;
}
int main(){
scanf("%d%d",&n,&m);
for(long long i=1;i<=n;i++){
scanf("%lld",&a[i]);
}
for(long long i=1;i<=m;i++){
scanf("%lld",&b[i]);
}
long long ans=0;
sort(b+1,b+m+1);
for(long long i=1;i<=n;i++){
if(check(a[i])){
a[i]=0;
}
}
long long flag=0;
for(long long i=1;i<=n;i++){
if(a[i]!=0&&flag==0){
flag=1;
ans++;
}
if(a[i]==0&&flag==1){
flag=0;
}
}
cout<<ans;
return 0;
}