import java.util.Scanner;
public class Main {
	public static void main(String[] args){

		Scanner sc = new Scanner(System.in);

		int sunukeCount = sc.nextInt();
		int okashiCount = sc.nextInt();
		int itazuraCount = 0;
		boolean[] itazuraFlag = new boolean [sunukeCount];
		for (int i = 0; i < sunukeCount; i++) {
				itazuraFlag[i] = true;
		}

		for (int i = 0; i < okashiCount; i++) {
			int dCount = sc.nextInt();
			for (int j = 0; j < dCount; j++) {
				int tmp = sc.nextInt();
				tmp--;
				itazuraFlag[tmp] = false;
			}
		}

		for (int i = 0; i < sunukeCount; i++) {
			if (itazuraFlag[i] == true) {
				itazuraCount++;
			}
		}

		System.out.print(itazuraCount);

	return;

	}
} import java.util.Scanner; Scanner java.util public class Main {
	public static void main(String[] args){

		Scanner sc = new Scanner(System.in);

		int sunukeCount = sc.nextInt();
		int okashiCount = sc.nextInt();
		int itazuraCount = 0;
		boolean[] itazuraFlag = new boolean [sunukeCount];
		for (int i = 0; i < sunukeCount; i++) {
				itazuraFlag[i] = true;
		}

		for (int i = 0; i < okashiCount; i++) {
			int dCount = sc.nextInt();
			for (int j = 0; j < dCount; j++) {
				int tmp = sc.nextInt();
				tmp--;
				itazuraFlag[tmp] = false;
			}
		}

		for (int i = 0; i < sunukeCount; i++) {
			if (itazuraFlag[i] == true) {
				itazuraCount++;
			}
		}

		System.out.print(itazuraCount);

	return;

	}
} Main public static void main(String[] args){

		Scanner sc = new Scanner(System.in);

		int sunukeCount = sc.nextInt();
		int okashiCount = sc.nextInt();
		int itazuraCount = 0;
		boolean[] itazuraFlag = new boolean [sunukeCount];
		for (int i = 0; i < sunukeCount; i++) {
				itazuraFlag[i] = true;
		}

		for (int i = 0; i < okashiCount; i++) {
			int dCount = sc.nextInt();
			for (int j = 0; j < dCount; j++) {
				int tmp = sc.nextInt();
				tmp--;
				itazuraFlag[tmp] = false;
			}
		}

		for (int i = 0; i < sunukeCount; i++) {
			if (itazuraFlag[i] == true) {
				itazuraCount++;
			}
		}

		System.out.print(itazuraCount);

	return;

	} main {

		Scanner sc = new Scanner(System.in);

		int sunukeCount = sc.nextInt();
		int okashiCount = sc.nextInt();
		int itazuraCount = 0;
		boolean[] itazuraFlag = new boolean [sunukeCount];
		for (int i = 0; i < sunukeCount; i++) {
				itazuraFlag[i] = true;
		}

		for (int i = 0; i < okashiCount; i++) {
			int dCount = sc.nextInt();
			for (int j = 0; j < dCount; j++) {
				int tmp = sc.nextInt();
				tmp--;
				itazuraFlag[tmp] = false;
			}
		}

		for (int i = 0; i < sunukeCount; i++) {
			if (itazuraFlag[i] == true) {
				itazuraCount++;
			}
		}

		System.out.print(itazuraCount);

	return;

	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int sunukeCount = sc.nextInt(); sunukeCount sc.nextInt() sc.nextInt sc int okashiCount = sc.nextInt(); okashiCount sc.nextInt() sc.nextInt sc int itazuraCount = 0; itazuraCount 0 boolean[] itazuraFlag = new boolean [sunukeCount]; itazuraFlag new boolean [sunukeCount] sunukeCount for (int i = 0; i < sunukeCount; i++) {
				itazuraFlag[i] = true;
		} int i = 0; int i = 0; i 0 i < sunukeCount i sunukeCount i++ i++ i {
				itazuraFlag[i] = true;
		} {
				itazuraFlag[i] = true;
		} itazuraFlag[i] = true itazuraFlag[i] itazuraFlag i true for (int i = 0; i < okashiCount; i++) {
			int dCount = sc.nextInt();
			for (int j = 0; j < dCount; j++) {
				int tmp = sc.nextInt();
				tmp--;
				itazuraFlag[tmp] = false;
			}
		} int i = 0; int i = 0; i 0 i < okashiCount i okashiCount i++ i++ i {
			int dCount = sc.nextInt();
			for (int j = 0; j < dCount; j++) {
				int tmp = sc.nextInt();
				tmp--;
				itazuraFlag[tmp] = false;
			}
		} {
			int dCount = sc.nextInt();
			for (int j = 0; j < dCount; j++) {
				int tmp = sc.nextInt();
				tmp--;
				itazuraFlag[tmp] = false;
			}
		} int dCount = sc.nextInt(); dCount sc.nextInt() sc.nextInt sc for (int j = 0; j < dCount; j++) {
				int tmp = sc.nextInt();
				tmp--;
				itazuraFlag[tmp] = false;
			} int j = 0; int j = 0; j 0 j < dCount j dCount j++ j++ j {
				int tmp = sc.nextInt();
				tmp--;
				itazuraFlag[tmp] = false;
			} {
				int tmp = sc.nextInt();
				tmp--;
				itazuraFlag[tmp] = false;
			} int tmp = sc.nextInt(); tmp sc.nextInt() sc.nextInt sc tmp-- tmp itazuraFlag[tmp] = false itazuraFlag[tmp] itazuraFlag tmp false for (int i = 0; i < sunukeCount; i++) {
			if (itazuraFlag[i] == true) {
				itazuraCount++;
			}
		} int i = 0; int i = 0; i 0 i < sunukeCount i sunukeCount i++ i++ i {
			if (itazuraFlag[i] == true) {
				itazuraCount++;
			}
		} {
			if (itazuraFlag[i] == true) {
				itazuraCount++;
			}
		} if (itazuraFlag[i] == true) {
				itazuraCount++;
			} itazuraFlag[i] == true itazuraFlag[i] itazuraFlag i true {
				itazuraCount++;
			} itazuraCount++ itazuraCount System.out.print(itazuraCount) System.out.print System.out System System.out itazuraCount return; String[] args args public class Main {
	public static void main(String[] args){

		Scanner sc = new Scanner(System.in);

		int sunukeCount = sc.nextInt();
		int okashiCount = sc.nextInt();
		int itazuraCount = 0;
		boolean[] itazuraFlag = new boolean [sunukeCount];
		for (int i = 0; i < sunukeCount; i++) {
				itazuraFlag[i] = true;
		}

		for (int i = 0; i < okashiCount; i++) {
			int dCount = sc.nextInt();
			for (int j = 0; j < dCount; j++) {
				int tmp = sc.nextInt();
				tmp--;
				itazuraFlag[tmp] = false;
			}
		}

		for (int i = 0; i < sunukeCount; i++) {
			if (itazuraFlag[i] == true) {
				itazuraCount++;
			}
		}

		System.out.print(itazuraCount);

	return;

	}
} public class Main {
	public static void main(String[] args){

		Scanner sc = new Scanner(System.in);

		int sunukeCount = sc.nextInt();
		int okashiCount = sc.nextInt();
		int itazuraCount = 0;
		boolean[] itazuraFlag = new boolean [sunukeCount];
		for (int i = 0; i < sunukeCount; i++) {
				itazuraFlag[i] = true;
		}

		for (int i = 0; i < okashiCount; i++) {
			int dCount = sc.nextInt();
			for (int j = 0; j < dCount; j++) {
				int tmp = sc.nextInt();
				tmp--;
				itazuraFlag[tmp] = false;
			}
		}

		for (int i = 0; i < sunukeCount; i++) {
			if (itazuraFlag[i] == true) {
				itazuraCount++;
			}
		}

		System.out.print(itazuraCount);

	return;

	}
} Main
import java.util.Scanner;
public class Main {
	public static void main(String[] args){

		Scanner sc = new Scanner(System.in);

		int sunukeCount = sc.nextInt();
		int okashiCount = sc.nextInt();
		int itazuraCount = 0;
		boolean[] itazuraFlag = new boolean [sunukeCount];
		for (int i = 0; i < sunukeCount; i++) {
				itazuraFlag[i] = true;
		}

		for (int i = 0; i < okashiCount; i++) {
			int dCount = sc.nextInt();
			for (int j = 0; j < dCount; j++) {
				int tmp = sc.nextInt();
				tmp--;
				itazuraFlag[tmp] = false;
			}
		}

		for (int i = 0; i < sunukeCount; i++) {
			if (itazuraFlag[i] == true) {
				itazuraCount++;
			}
		}

		System.out.print(itazuraCount);

	return;

	}
}
