n,*S = open(0).read().split() n = int(n) g = [[-1]*26 for _ in range(26)] for i in range(26): g[i][i] = 0 dp = [0]*26 for s in S: if "".join(sorted(s)) != s: continue a = ord(s[0])-97 b = ord(s[-1])-97 if a != b: g[a][b] = max(g[a][b],len(s)) else: g[a][a] += len(s) ans = 0 for i in range(26): dp[i] += g[i][i] for j in range(i+1,26): dp[j] = max(dp[j],dp[i]+ max(0,g[i][j])) print(max(dp))