import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int k = sc.nextInt();
		
		boolean[][] hasOkasi = new boolean[n][k];
		
		for(int i = 0; i < k; i++) {
			int d = sc.nextInt();
			for(int j = 0; j < d; j++) {
				int temp = sc.nextInt() - 1;
				hasOkasi[temp][i] = true;
			}
		}
		
		int count = 0;
		for(int i = 0; i < n; i++) {
			count++;
			for(int j = 0; j < k; j++) {
				if(hasOkasi[i][j]) {
					count--;
					break;
				}
			}
		}
		
		System.out.println(count);
		
	}

} import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int k = sc.nextInt();
		
		boolean[][] hasOkasi = new boolean[n][k];
		
		for(int i = 0; i < k; i++) {
			int d = sc.nextInt();
			for(int j = 0; j < d; j++) {
				int temp = sc.nextInt() - 1;
				hasOkasi[temp][i] = true;
			}
		}
		
		int count = 0;
		for(int i = 0; i < n; i++) {
			count++;
			for(int j = 0; j < k; j++) {
				if(hasOkasi[i][j]) {
					count--;
					break;
				}
			}
		}
		
		System.out.println(count);
		
	}

} Main public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int k = sc.nextInt();
		
		boolean[][] hasOkasi = new boolean[n][k];
		
		for(int i = 0; i < k; i++) {
			int d = sc.nextInt();
			for(int j = 0; j < d; j++) {
				int temp = sc.nextInt() - 1;
				hasOkasi[temp][i] = true;
			}
		}
		
		int count = 0;
		for(int i = 0; i < n; i++) {
			count++;
			for(int j = 0; j < k; j++) {
				if(hasOkasi[i][j]) {
					count--;
					break;
				}
			}
		}
		
		System.out.println(count);
		
	} main {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int k = sc.nextInt();
		
		boolean[][] hasOkasi = new boolean[n][k];
		
		for(int i = 0; i < k; i++) {
			int d = sc.nextInt();
			for(int j = 0; j < d; j++) {
				int temp = sc.nextInt() - 1;
				hasOkasi[temp][i] = true;
			}
		}
		
		int count = 0;
		for(int i = 0; i < n; i++) {
			count++;
			for(int j = 0; j < k; j++) {
				if(hasOkasi[i][j]) {
					count--;
					break;
				}
			}
		}
		
		System.out.println(count);
		
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n = sc.nextInt(); n sc.nextInt() sc.nextInt sc int k = sc.nextInt(); k sc.nextInt() sc.nextInt sc boolean[][] hasOkasi = new boolean[n][k]; hasOkasi new boolean[n][k] n k for(int i = 0; i < k; i++) {
			int d = sc.nextInt();
			for(int j = 0; j < d; j++) {
				int temp = sc.nextInt() - 1;
				hasOkasi[temp][i] = true;
			}
		} int i = 0; int i = 0; i 0 i < k i k i++ i++ i {
			int d = sc.nextInt();
			for(int j = 0; j < d; j++) {
				int temp = sc.nextInt() - 1;
				hasOkasi[temp][i] = true;
			}
		} {
			int d = sc.nextInt();
			for(int j = 0; j < d; j++) {
				int temp = sc.nextInt() - 1;
				hasOkasi[temp][i] = true;
			}
		} int d = sc.nextInt(); d sc.nextInt() sc.nextInt sc for(int j = 0; j < d; j++) {
				int temp = sc.nextInt() - 1;
				hasOkasi[temp][i] = true;
			} int j = 0; int j = 0; j 0 j < d j d j++ j++ j {
				int temp = sc.nextInt() - 1;
				hasOkasi[temp][i] = true;
			} {
				int temp = sc.nextInt() - 1;
				hasOkasi[temp][i] = true;
			} int temp = sc.nextInt() - 1; temp sc.nextInt() - 1 sc.nextInt() sc.nextInt sc 1 hasOkasi[temp][i] = true hasOkasi[temp][i] hasOkasi[temp] hasOkasi temp i true int count = 0; count 0 for(int i = 0; i < n; i++) {
			count++;
			for(int j = 0; j < k; j++) {
				if(hasOkasi[i][j]) {
					count--;
					break;
				}
			}
		} int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
			count++;
			for(int j = 0; j < k; j++) {
				if(hasOkasi[i][j]) {
					count--;
					break;
				}
			}
		} {
			count++;
			for(int j = 0; j < k; j++) {
				if(hasOkasi[i][j]) {
					count--;
					break;
				}
			}
		} count++ count for(int j = 0; j < k; j++) {
				if(hasOkasi[i][j]) {
					count--;
					break;
				}
			} int j = 0; int j = 0; j 0 j < k j k j++ j++ j {
				if(hasOkasi[i][j]) {
					count--;
					break;
				}
			} {
				if(hasOkasi[i][j]) {
					count--;
					break;
				}
			} if(hasOkasi[i][j]) {
					count--;
					break;
				} hasOkasi[i][j] hasOkasi[i] hasOkasi i j {
					count--;
					break;
				} count-- count break; System.out.println(count) System.out.println System.out System System.out count String[] args args public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int k = sc.nextInt();
		
		boolean[][] hasOkasi = new boolean[n][k];
		
		for(int i = 0; i < k; i++) {
			int d = sc.nextInt();
			for(int j = 0; j < d; j++) {
				int temp = sc.nextInt() - 1;
				hasOkasi[temp][i] = true;
			}
		}
		
		int count = 0;
		for(int i = 0; i < n; i++) {
			count++;
			for(int j = 0; j < k; j++) {
				if(hasOkasi[i][j]) {
					count--;
					break;
				}
			}
		}
		
		System.out.println(count);
		
	}

} public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int k = sc.nextInt();
		
		boolean[][] hasOkasi = new boolean[n][k];
		
		for(int i = 0; i < k; i++) {
			int d = sc.nextInt();
			for(int j = 0; j < d; j++) {
				int temp = sc.nextInt() - 1;
				hasOkasi[temp][i] = true;
			}
		}
		
		int count = 0;
		for(int i = 0; i < n; i++) {
			count++;
			for(int j = 0; j < k; j++) {
				if(hasOkasi[i][j]) {
					count--;
					break;
				}
			}
		}
		
		System.out.println(count);
		
	}

} Main
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int k = sc.nextInt();
		
		boolean[][] hasOkasi = new boolean[n][k];
		
		for(int i = 0; i < k; i++) {
			int d = sc.nextInt();
			for(int j = 0; j < d; j++) {
				int temp = sc.nextInt() - 1;
				hasOkasi[temp][i] = true;
			}
		}
		
		int count = 0;
		for(int i = 0; i < n; i++) {
			count++;
			for(int j = 0; j < k; j++) {
				if(hasOkasi[i][j]) {
					count--;
					break;
				}
			}
		}
		
		System.out.println(count);
		
	}

}
