#include <bits/stdc++.h>
using namespace std;
int N, K;
vector<int> tem[1024];
int main() {
  int n, i, a, b;
  int nex, ant;
  vector<int>::iterator p;
  scanf("%d", &N);
  for (i = 0; i < N; i++) {
    scanf("%d", &K);
    for (n = 0; n < K; n++) {
      scanf("%d", &a);
      tem[i].push_back(a);
    }
  }
  for (i = 0; i < N; i++) {
    sort(tem[i].begin(), tem[i].end());
  }
  int R = 0;
  int ul, ol;
  for (i = 0; i < N; i++) {
    nex = (i + 1) % N;
    ant = (i + N - 1) % N;
    for (unsigned n = 1; n < tem[i].size(); n++) {
      p = lower_bound(tem[ant].begin(), tem[ant].end(), tem[i][n - 1]);
      a = p - tem[ant].begin();
      p = upper_bound(tem[ant].begin(), tem[ant].end(), tem[i][n]);
      b = p - tem[ant].begin();
      ul = b - a;
      p = lower_bound(tem[nex].begin(), tem[nex].end(), tem[i][n - 1]);
      a = p - tem[nex].begin();
      p = upper_bound(tem[nex].begin(), tem[nex].end(), tem[i][n]);
      b = p - tem[nex].begin();
      ol = b - a;
      if (ul != ol) {
        R++;
      }
    }
  }
  printf("%d\n", R);
  return 0;
}
