#include <bits/stdc++.h>
using namespace std;
int n,f[20];
long long maxx;
string a[20];
void dfs(int x,long long sum){
f[x] = 1;
maxx = max(maxx,sum);
for(int i=1;i<=n;i++){
if(f[i] == 0 && a[i][0] == a[x][a[x].size()-1]) dfs(i,sum + a[i].size());
}
}
int main()
{
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=1;i<=n;i++){
memset(f,0,sizeof(f));
dfs(i,a[i].size());
}
cout<<maxx;
return 0;
}