Module: 波尔


Problem

10 /10


短代码

Problem

Evan 的代码包含 n 个变量。每个变量都有一个唯一的名称,仅由英文小写(小)字母组成。有一天,Evan 决定缩短他的代码。

他想用非空前缀替换每个变量的名称,以使新名称保持两两不同(但某些变量的新名称可能与该变量或另一个变量的旧名称相同)。在所有这些可能的替换中,他想找到一个变量名的总长度最小的。

如果可以从字符串 b 的末尾删除一些(可能没有)字符并得到 a,则字符串 a 是字符串 b 的前缀。

找到新名称的最小可能总长度。

输入:
第一行包含一个整数 n (1 ≤ n ≤ 105) — Evan 代码中的变量数。

接下来的 n 行包含变量名,每行一个。每个名称都不是空字符串,只包含小写(小)英文字母。所有这些字符串的总长度不超过 105。所有变量名都不同。

输出:
打印单个整数——新变量名的最小可能总长度。

示例:
  <正文>
说明:
在第一个示例中,最好的选择之一是按照输入的顺序将名称缩短为“cod”、“co”、“c”。
在第二个示例中,您可以将姓氏缩短为“aac”名字在“a”之前不改变其他变量名。
输入 输出
3


代码
6
5
阿爸
阿布
ab

阿卡达
11
3
电报
数字
阻力
3