#CSP1118. 魔法咒语(magic)

    ID: 18108 Type: Default File IO: magic 1000ms 256MiB Tried: 7 Accepted: 1 Difficulty: 10 Uploaded By: Tags>CSP-S模拟暑期集训

魔法咒语(magic)

题目描述

在一个遥远的魔法王国里,图书馆里藏有一本神秘的魔法书,这本书收录了 nn 个魔法咒语。

小 Z 是魔法王国中的一员,他现在需要创造新的咒语,这些新咒语必须遵循以下两个规则之一:

  1. 新咒语必须是魔法书中已有的咒语。
  2. 新咒语可以由两部分组成,其中第一部分是魔法书中的一个咒语或者该咒语的非空开头部分(非空前缀),第二部分是魔法书中的一个咒语或者该咒语的非空结尾部分(非空后缀)。这两部分可以来自同一个咒语。

小 Z 想知道,按照这些规则,他们能创造出多少种不同的咒语。

输入格式

magic.in 文件读入数据。

第一行一个整数 nn 表示魔法咒语个数。

接下来 nn 行,每行一个魔法咒语。

输出格式

输出到 magic.out 文件。

输出一个整数,表示答案。

样例

3
abc
def
abef
60

样例 2

点击链接 ex_magic2.inex_magic2.out 下载大样例 2 的输入数据和输出数据。

说明/提示

30%30\% 的数据满足 n<400n<400,咒语长度不超过 4040,输入字母总数不超过 30003000

100%100\% 的数据满足 n<10000n<10000,单词长度不超过 4040,咒语仅包含小写字母。