AT_abc310_c [ABC310C] Reversible

题目描述

有 $N$ 根插有若干球的棒,每个球上写有一个小写英文字母。 对于 $i = 1, 2, \ldots, N$,第 $i$ 根棒上插着的每个球上的小写字母由字符串 $S_i$ 表示。具体来说,第 $i$ 根棒上插着的球的数量等于字符串 $S_i$ 的长度 $|S_i|$,并且从棒的一端开始依次排列球上的字母,得到的字符串就是 $S_i$。 如果两根棒上插着的球上的字母,从任意一端开始依次排列后得到的序列相同,则认为这两根棒是相同的。更形式化地说,对于 $1 \leq i, j \leq N$,当且仅当 $S_i$ 与 $S_j$ 相同,或者 $S_i$ 与 $S_j$ 的反转字符串相同时,第 $i$ 根棒和第 $j$ 根棒被认为是相同的。 请输出 $N$ 根棒中有多少种不同的棒。

输入格式

输入按以下格式从标准输入给出。 > $N$ > $S_1$ > $S_2$ > $\vdots$ > $S_N$

输出格式

请输出答案。

说明/提示

### 限制条件 - $N$ 是整数 - $2 \leq N \leq 2 \times 10^5$ - $S_i$ 仅由小写英文字母组成 - $|S_i| \geq 1$ - $\sum_{i=1}^N |S_i| \leq 2 \times 10^5$ ### 样例解释 1 - $S_2 = \texttt{abc}$ 与 $S_4 = \texttt{cba}$ 反转后相同,因此第 2 根棒和第 4 根棒被认为是相同的。 - $S_2 = \texttt{abc}$ 与 $S_6 = \texttt{abc}$ 完全相同,因此第 2 根棒和第 6 根棒被认为是相同的。 - $S_3 = \texttt{de}$ 与 $S_5 = \texttt{de}$ 完全相同,因此第 3 根棒和第 5 根棒被认为是相同的。 因此,6 根棒中有 3 种不同的棒,分别为第 1 根棒,第 2 根棒(与第 4、6 根棒相同),第 3 根棒(与第 5 根棒相同)。 由 ChatGPT 4.1 翻译