#iai14a2. 批量比较(Batch Comparison)

批量比较(Batch Comparison)

批量比较(Batch Comparison)

题目描述

给定 nn 个字符串,将它们两两进行字符串比较运算,请统计一共需要进行多少次单个字符的比较运算。

字符串比较运算是这样进行的:先比较两个字符串的第一位字符,若不一样,则返回不相等的结论,否则,继续比较第二位字符,直到出现不相等的字符或某个字符串没有更多字符为止。

例如:

  • 对于 abcdabef 来说,需要比较三次:前两次比较相等,最后一次分出了区别。
  • 对于 ababcd 来说,需要比较两次:两次比较后,前一个字符串不再有新字符,结束比较运算。

输入格式

第一行:单个正整数表示 nn

第二行到第 n+1n+1 行:每行一个字符串 sis_i,保证仅有小写英文字母构成。

输出格式

单个正整数:表示这些字符串两两比较需要的最少比较次数。

样例输入 #1

3
abc
abe
aac

样例输出 #1

7

数据范围

si|s_i| 为字符串 sis_i 的长度,

  • 对于 30% 的分数,n5000n \le 5000si5000|s_i| \le 5000
  • 对于 60% 的分数,n50000n \le 50000si50000|s_i| \le 50000
  • 对于 100% 的分数,s1+s2++sn500000|s_1|+|s_2|+\cdots+|s_n| \le 500000

知识点与难度

本题涉及的知识点从属于 GESP 5级(Trie 树、字符串处理),难度等级:⭐⭐⭐