import java.util.ArrayList;
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);

		int n = scan.nextInt();
		int k = scan.nextInt();
		int c = 0;
		boolean notHave = false;
		ArrayList<ArrayList<Integer>> b_list = new ArrayList<ArrayList<Integer>>(n);
		int count_treat = 0;

		for(int i = 0;i < n;i++) {
			b_list.add(new ArrayList<Integer>());
		}

		for(int i = 0;i < (2 * k);i++) {
			if(i % 2 == 0) {
				c = scan.nextInt();
			}else {
				for(int j = 0;j < c;j++) {
					b_list.get(scan.nextInt() - 1).add(i);
				}
			}
		}

		for(int i = 0;i < n;i++) {
			if(b_list.get(i).size() == 0) {
				count_treat += 1;
			}
		}

		System.out.println(count_treat);
	}
} import java.util.ArrayList; ArrayList java.util import java.util.Scanner; Scanner java.util public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);

		int n = scan.nextInt();
		int k = scan.nextInt();
		int c = 0;
		boolean notHave = false;
		ArrayList<ArrayList<Integer>> b_list = new ArrayList<ArrayList<Integer>>(n);
		int count_treat = 0;

		for(int i = 0;i < n;i++) {
			b_list.add(new ArrayList<Integer>());
		}

		for(int i = 0;i < (2 * k);i++) {
			if(i % 2 == 0) {
				c = scan.nextInt();
			}else {
				for(int j = 0;j < c;j++) {
					b_list.get(scan.nextInt() - 1).add(i);
				}
			}
		}

		for(int i = 0;i < n;i++) {
			if(b_list.get(i).size() == 0) {
				count_treat += 1;
			}
		}

		System.out.println(count_treat);
	}
} Main public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);

		int n = scan.nextInt();
		int k = scan.nextInt();
		int c = 0;
		boolean notHave = false;
		ArrayList<ArrayList<Integer>> b_list = new ArrayList<ArrayList<Integer>>(n);
		int count_treat = 0;

		for(int i = 0;i < n;i++) {
			b_list.add(new ArrayList<Integer>());
		}

		for(int i = 0;i < (2 * k);i++) {
			if(i % 2 == 0) {
				c = scan.nextInt();
			}else {
				for(int j = 0;j < c;j++) {
					b_list.get(scan.nextInt() - 1).add(i);
				}
			}
		}

		for(int i = 0;i < n;i++) {
			if(b_list.get(i).size() == 0) {
				count_treat += 1;
			}
		}

		System.out.println(count_treat);
	} main {
		Scanner scan = new Scanner(System.in);

		int n = scan.nextInt();
		int k = scan.nextInt();
		int c = 0;
		boolean notHave = false;
		ArrayList<ArrayList<Integer>> b_list = new ArrayList<ArrayList<Integer>>(n);
		int count_treat = 0;

		for(int i = 0;i < n;i++) {
			b_list.add(new ArrayList<Integer>());
		}

		for(int i = 0;i < (2 * k);i++) {
			if(i % 2 == 0) {
				c = scan.nextInt();
			}else {
				for(int j = 0;j < c;j++) {
					b_list.get(scan.nextInt() - 1).add(i);
				}
			}
		}

		for(int i = 0;i < n;i++) {
			if(b_list.get(i).size() == 0) {
				count_treat += 1;
			}
		}

		System.out.println(count_treat);
	} Scanner scan = new Scanner(System.in); scan new Scanner(System.in) int n = scan.nextInt(); n scan.nextInt() scan.nextInt scan int k = scan.nextInt(); k scan.nextInt() scan.nextInt scan int c = 0; c 0 boolean notHave = false; notHave false ArrayList<ArrayList<Integer>> b_list = new ArrayList<ArrayList<Integer>>(n); b_list new ArrayList<ArrayList<Integer>>(n) int count_treat = 0; count_treat 0 for(int i = 0;i < n;i++) {
			b_list.add(new ArrayList<Integer>());
		} int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
			b_list.add(new ArrayList<Integer>());
		} {
			b_list.add(new ArrayList<Integer>());
		} b_list.add(new ArrayList<Integer>()) b_list.add b_list new ArrayList<Integer>() for(int i = 0;i < (2 * k);i++) {
			if(i % 2 == 0) {
				c = scan.nextInt();
			}else {
				for(int j = 0;j < c;j++) {
					b_list.get(scan.nextInt() - 1).add(i);
				}
			}
		} int i = 0; int i = 0; i 0 i < (2 * k) i (2 * k) 2 k i++ i++ i {
			if(i % 2 == 0) {
				c = scan.nextInt();
			}else {
				for(int j = 0;j < c;j++) {
					b_list.get(scan.nextInt() - 1).add(i);
				}
			}
		} {
			if(i % 2 == 0) {
				c = scan.nextInt();
			}else {
				for(int j = 0;j < c;j++) {
					b_list.get(scan.nextInt() - 1).add(i);
				}
			}
		} if(i % 2 == 0) {
				c = scan.nextInt();
			}else {
				for(int j = 0;j < c;j++) {
					b_list.get(scan.nextInt() - 1).add(i);
				}
			} i % 2 == 0 i % 2 i 2 0 {
				c = scan.nextInt();
			} c = scan.nextInt() c scan.nextInt() scan.nextInt scan {
				for(int j = 0;j < c;j++) {
					b_list.get(scan.nextInt() - 1).add(i);
				}
			} for(int j = 0;j < c;j++) {
					b_list.get(scan.nextInt() - 1).add(i);
				} int j = 0; int j = 0; j 0 j < c j c j++ j++ j {
					b_list.get(scan.nextInt() - 1).add(i);
				} {
					b_list.get(scan.nextInt() - 1).add(i);
				} b_list.get(scan.nextInt() - 1).add(i) b_list.get(scan.nextInt() - 1).add b_list.get(scan.nextInt() - 1) b_list.get b_list scan.nextInt() - 1 scan.nextInt() scan.nextInt scan 1 i for(int i = 0;i < n;i++) {
			if(b_list.get(i).size() == 0) {
				count_treat += 1;
			}
		} int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
			if(b_list.get(i).size() == 0) {
				count_treat += 1;
			}
		} {
			if(b_list.get(i).size() == 0) {
				count_treat += 1;
			}
		} if(b_list.get(i).size() == 0) {
				count_treat += 1;
			} b_list.get(i).size() == 0 b_list.get(i).size() b_list.get(i).size b_list.get(i) b_list.get b_list i 0 {
				count_treat += 1;
			} count_treat += 1 count_treat 1 System.out.println(count_treat) System.out.println System.out System System.out count_treat String[] args args public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);

		int n = scan.nextInt();
		int k = scan.nextInt();
		int c = 0;
		boolean notHave = false;
		ArrayList<ArrayList<Integer>> b_list = new ArrayList<ArrayList<Integer>>(n);
		int count_treat = 0;

		for(int i = 0;i < n;i++) {
			b_list.add(new ArrayList<Integer>());
		}

		for(int i = 0;i < (2 * k);i++) {
			if(i % 2 == 0) {
				c = scan.nextInt();
			}else {
				for(int j = 0;j < c;j++) {
					b_list.get(scan.nextInt() - 1).add(i);
				}
			}
		}

		for(int i = 0;i < n;i++) {
			if(b_list.get(i).size() == 0) {
				count_treat += 1;
			}
		}

		System.out.println(count_treat);
	}
} public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);

		int n = scan.nextInt();
		int k = scan.nextInt();
		int c = 0;
		boolean notHave = false;
		ArrayList<ArrayList<Integer>> b_list = new ArrayList<ArrayList<Integer>>(n);
		int count_treat = 0;

		for(int i = 0;i < n;i++) {
			b_list.add(new ArrayList<Integer>());
		}

		for(int i = 0;i < (2 * k);i++) {
			if(i % 2 == 0) {
				c = scan.nextInt();
			}else {
				for(int j = 0;j < c;j++) {
					b_list.get(scan.nextInt() - 1).add(i);
				}
			}
		}

		for(int i = 0;i < n;i++) {
			if(b_list.get(i).size() == 0) {
				count_treat += 1;
			}
		}

		System.out.println(count_treat);
	}
} Main
import java.util.ArrayList;
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);

		int n = scan.nextInt();
		int k = scan.nextInt();
		int c = 0;
		boolean notHave = false;
		ArrayList<ArrayList<Integer>> b_list = new ArrayList<ArrayList<Integer>>(n);
		int count_treat = 0;

		for(int i = 0;i < n;i++) {
			b_list.add(new ArrayList<Integer>());
		}

		for(int i = 0;i < (2 * k);i++) {
			if(i % 2 == 0) {
				c = scan.nextInt();
			}else {
				for(int j = 0;j < c;j++) {
					b_list.get(scan.nextInt() - 1).add(i);
				}
			}
		}

		for(int i = 0;i < n;i++) {
			if(b_list.get(i).size() == 0) {
				count_treat += 1;
			}
		}

		System.out.println(count_treat);
	}
}
