AT_abc413_b [ABC413B] cat 2
题目描述
给定 $N$ 种字符串 $S_1, S_2, \ldots, S_N$。
你可以进行如下操作一次:
- 选择两个**不同的**整数 $i, j\ (1 \leq i \leq N, 1 \leq j \leq N)$,将 $S_i$ 和 $S_j$ 按顺序连接起来。
请你求出通过上述操作能够得到多少种不同的字符串。
需要注意的是,即使选择的 $(i, j)$ 不同,只要连接后的字符串相同,也只算作一种。
输入格式
输入以如下格式从标准输入读入。
> $N$
> $S_1$
> $S_2$
> $\vdots$
> $S_N$
输出格式
输出通过操作能够得到的不同字符串的种数。
说明/提示
## 限制条件
- $2 \leq N \leq 100$
- $N$ 为整数
- $S_i$ 是仅由小写英文字母组成的,长度在 $1$ 到 $10$ 之间的字符串
- $S_i \ne S_j\ (1 \leq i < j \leq N)$
## 样例解释 1
可以得到的字符串有:`atatco`、`atcoat`、`atcoder`、`atcocoder`、`atder`、`coderat`、`coderatco`、`coderder`、`derat`、`deratco`、`dercoder` 共 $11$ 种。因此输出 `11`。
## 样例解释 2
可以得到的字符串有:`aaa`、`aaaa`、`aaaaa`、`aaaaaa`、`aaaaaaa`、`aaaaaaaa`、`aaaaaaaaa` 共 $7$ 种。因此输出 `7`。
由 ChatGPT 4.1 翻译