#include <bits/stdc++.h>
using namespace std;
inline long long int f(long long int idx) {}
inline long long int g(long long int val, long long int key,
                       long long int ret) {
  return (val <= key) ? ret : ret - 1;
}
inline long long int lowbound(long long int l, long long int r,
                              long long int key) {
  long long int mid, val;
  while (l < r) {
    mid = (l + r) >> 1;
    val = f(mid);
    if (key > val) {
      l = mid + 1;
    } else {
      r = mid;
    }
  }
  return g(f(l), key, l);
}
inline long long int Pow(long long int a, long long int b, long long int mod) {
  long long int res = 1;
  while (b) {
    if (b & 1) res = (res * a) % mod;
    a = (a * a) % mod;
    b >>= 1;
  }
  return res;
}
inline long long int Poww(long long int a, long long int b) {
  long long int res = 1;
  while (b) {
    if (b & 1) res = res * a;
    a = a * a;
    b >>= 1;
  }
  return res;
}
int arr[100001], n, k, m, j, res, op;
int main() {
  std::ios::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  cin >> n >> k;
  op = (n << 1) - k - 1;
  for (int i = int(1); i <= int(k); i++) {
    cin >> m;
    for (int i = int(1); i <= int(m); i++) {
      cin >> arr[i];
    }
    j = 1;
    while (arr[j] == j) j++;
    if (--j) op -= (j - 1) << 1;
  }
  cout << op << "\n";
  return 0;
}
