n = int(input()) lr = [] for _ in range(n): S = input() l = len(S) ok = True for i in range(l - 1): if S[i] > S[i + 1]: ok = False break if ok: lr.append((ord(S[0]) - 97, ord(S[-1]) - 97, l)) lr.sort(key = lambda x:(x[1], x[0])) dp = [0] * 26 for l, r, x in lr: max_ = 0 for i in range(l + 1): max_ = max(max_, dp[i]) dp[r] = max(dp[r], max_ + x) print(max(dp))