#include <bits/stdc++.h>
using namespace std;
int n;
char t[100010];
int len;
int ch[300010][28];
int cnt;
bool End[300010];
void Insert() {
  int now = 0;
  for (int i = 1; i <= len; i++) {
    if (ch[now][t[i] - 'a'])
      now = ch[now][t[i] - 'a'];
    else
      now = ch[now][t[i] - 'a'] = ++cnt;
  }
  End[now] = 1;
}
int ans;
priority_queue<int> op[300010];
int num[300010];
void dfs(int w, int dept) {
  int id = 0;
  for (int i = 0; i <= 25; i++)
    if (ch[w][i]) {
      dfs(ch[w][i], dept + 1);
      if (num[id] <= num[ch[w][i]]) id = ch[w][i];
    }
  swap(op[w], op[id]);
  for (int i = 0; i <= 25; i++)
    if (ch[w][i] && ch[w][i] != id) {
      while (!op[ch[w][i]].empty()) {
        int t = op[ch[w][i]].top();
        op[ch[w][i]].pop();
        op[w].push(t);
      }
    }
  if (End[w])
    op[w].push(dept);
  else {
    int T = op[w].top();
    op[w].pop();
    ans -= T - dept;
    op[w].push(dept);
  }
}
int main() {
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) {
    scanf("%s", &t[1]);
    len = strlen(&t[1]);
    Insert();
    ans += len;
  }
  for (int i = 0; i <= 25; i++)
    if (ch[0][i]) dfs(ch[0][i], 1);
  cout << ans;
  return 0;
}
