#include <bits/stdc++.h>
int map[30][30];
int main() {
  int n, i, j;
  char str[20];
  scanf("%d", &n);
  int ls, x, y;
  for (i = 0; i < n; i++) {
    scanf("%s", str);
    ls = strlen(str);
    x = str[0] - 'a';
    y = str[ls - 1] - 'a';
    for (j = 0; j < 26; j++) {
      if (map[j][x] && map[j][x] + ls > map[j][y]) map[j][y] = map[j][x] + ls;
    }
    if (map[x][y] < ls) map[x][y] = ls;
  }
  int ans = 0;
  for (i = 0; i < 26; i++)
    if (map[i][i] > ans) ans = map[i][i];
  printf("%d\n", ans);
  return 0;
}
