Module: ボル


Problem

10 /10


ショートコード

Problem

Evan のコードには n 個の変数が含まれています。各変数には、英語の小文字 (小文字) のみで構成される一意の名前が付いています。ある日、エヴァンはコードを短くすることにしました

彼は、新しい名前がペアごとに区別できるように、各変数の名前を空ではないプレフィックスに置き換えたいと考えています (ただし、一部の変数の新しい名前は、この変数または別の変数の古い名前と同じである可能性があります)。考えられるすべての置換の中で、変数名の合計の長さが最小になる置換を見つけたいと考えています。

文字列 b の末尾からいくつかの文字 (おそらく何もない) を削除して a を取得できる場合、文字列 a は文字列 b のプレフィックスになります。

新しい名前の最小の合計長を見つけます。

入力:
最初の行には、単一の整数 n (1 ≤ n ≤ 105) が含まれています — Evan のコード内の変数の数

次の n 行には変数名が 1 行に 1 つずつ含まれます。各名前は空の文字列ではなく、小文字 (小さい) の英語文字のみが含まれています。これらすべての文字列の合計の長さは 105 以内です。変数名はすべて異なります

出力:
単一の整数を出力します —新しい変数名の合計の最小長。

例:
  <本体>
説明:
最初の例では、名前を入力順に「cod」、「co」、「c」に短縮するのが最良のオプションの 1 つです。
2 番目の例では、姓を「aac」に短縮できます。 「a」の前に名が入ります。他の変数名は変更せずに。
入力 出力
3


コード
6
5
アバ
abb
アブ
ああ
アアカダ
11
3
電報
デジタル
抵抗
3