#include <bits/stdc++.h>
using namespace std;
int dp[200][200];
int main() {
  int n;
  cin >> n;
  string t[n];
  for (int i = 0; i < n; i++) {
    cin >> t[i];
  }
  for (int i = 0; i < n; i++) {
    string s = t[i];
    for (char j = 'a'; j <= 'z'; j++) {
      if (s[0] == j || dp[j][s[0]]) {
        dp[j][s.back()] = max(dp[j][s[0]] + (int)s.size(), dp[j][s.back()]);
      }
    }
  }
  int mx = 0;
  for (char j = 'a'; j <= 'z'; j++) {
    mx = max(mx, dp[j][j]);
  }
  cout << mx << endl;
  return 0;
}
