#include <bits/stdc++.h>
using namespace std;
long long min(long long x, long long y) { return (x < y) ? x : y; }
long long max(long long x, long long y) { return (x > y) ? x : y; }
const int N = 100009;
long long x, y, n, m, e, i, u, w, mx, z, sum, l, r, best, cnt, g, j, k, t, ans;
long long a[N], dp[100][100];
string s;
int main() {
  ios_base::sync_with_stdio(false);
  cin >> n;
  for (i = 0; i < n; i++) {
    cin >> s;
    int l = s[0] - 'a';
    int r = s[s.size() - 1] - 'a';
    for (j = 0; j < 32; j++)
      if (dp[j][l]) dp[j][r] = max(dp[j][r], dp[j][l] + s.size());
    dp[l][r] = max(dp[l][r], s.size());
  }
  for (i = 0; i < 32; i++) mx = max(mx, dp[i][i]);
  cout << mx;
  return 0;
}
