n = read_line.to_i s = (1..n).map { read_line.chars }.sort_by { |s| s.last } dp = [0] * 26 s.each do |s| if s.each_cons(2).all? { |(i, j)| i <= j } f = s.first - 'a' l = s.last - 'a' dp[l] = {dp[l], (dp[..f].max? || 0) + s.size}.max end end puts dp.max