P0617

[Balkan2007]Toponyms

[Balkan2007]Toponyms

给你一个字符串集合,你要从其中找出一些字符串。希望你找出来的这些字符串的最长公共前缀的长度乘以字符串的总个数最大化。

输入格式

第一行给出一个数字 NN。

接下来 NN 行描述这些字符串,每行一个。

输出格式

输出一行一个整数,表示可以达到的最大复杂度 Lc(T)L_c(T)。

样例输入

7
Jora de Sus
Orhei
Jora de Mijloc
Joreni
Jora de Jos
Japca
Orheiul Vechi

样例输出

24

样例解释

选出 Jora de Sus、Jora de Mijloc、Jora de Jos 这 33 个字符串,它们的最长公共前缀为 Jora de (长度为 88,含末尾空格),得到 8×3=248\times 3 = 24,这是所有选法中的最大值。

数据范围

  • N∈[2,106]N\in[2, 10^6];
  • 每个字符串的长度不超过 2×1042\times 10^4;
  • 保证输入文件不超过 10 MB10\ \text{MB}。

来源与许可

本题为 Balkan 2007 试题「Toponyms」,题面与测试数据整理自 BZOJ 1174。

样例 1

输入

7
Jora de Sus
Orhei
Jora de Mijloc
Joreni
Jora de Jos
Japca
Orheiul Vechi

输出

24