import java.awt.List;
import java.awt.print.Printable;
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
HashMap< Integer, Integer>map1=new HashMap<>();
HashMap< Integer, Integer>map2=new HashMap<>();
int sum;
while(in.hasNext()){
int m=in.nextInt();
int n=in.nextInt();
int a[]=new int[m];
int b[]=new int[n];
map1.clear();
map2.clear();
for (int i = 0; i < m; i++) {
a[i]=in.nextInt();
if (!map1.containsKey(a[i])) {
map1.put(a[i], 1);
}else
map1.put(a[i], map1.get(a[i])+1);
}
for (int i = 0; i < b.length; i++) {
b[i]=in.nextInt();
if (!map2.containsKey(b[i])) {
map2.put(b[i], 1);
}else
map2.put(b[i], map2.get(b[i])+1);
}
sum=0;
for (Map.Entry<Integer, Integer>entry:map1.entrySet()) {
if (map2.containsKey(entry.getKey())) {
sum+=Math.min(entry.getValue(), map2.get(entry.getKey()));
}
}
System.out.println(sum);
//System.out.println(countWay);
}
}
}