测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A7611. [ABC137C] Green Bin

编程题 普及/提高-
知识点

题目描述

将字符串 $a$ 中的字符以任意顺序排列后得到的字符串称为 $a$ 的 *变位词*(anagram)。

例如,greenbinbeginner 的变位词。像这样,如果某个字符在原字符串中出现多次,则在变位词中也必须恰好出现相同次数。

给定 $N$ 个字符串 $s_1,\ s_2,\ \ldots,\ s_N$。每个字符串长度均为 $10$,且由小写英文字母组成,并且这些字符串两两不同。请你求出有多少对整数 $i,\ j$ $(1 \leq i < j \leq N)$ 满足 $s_i$ 是 $s_j$ 的变位词。

输入格式

输入按以下格式从标准输入给出。

> $N$
> $s_1$
> $s_2$
> $\vdots$
> $s_N$

输出格式

输出满足 $s_i$ 是 $s_j$ 的变位词的整数对 $(i, j)$ 的个数。

输入输出样例

输入 #1
3
acornistnt
peanutbomb
constraint
输出 #1
1
输入 #2
2
oneplustwo
ninemodsix
输出 #2
0
输入 #3
5
abaaaaaaaa
oneplustwo
aaaaaaaaba
twoplusone
aaaabaaaaa
输出 #3
4

说明/提示

## 限制条件

- $2 \leq N \leq 10^5$
- $s_i$ 是长度为 $10$ 的字符串。
- $s_i$ 的每个字符都是小写英文字母。
- $s_1, s_2, \ldots, s_N$ 互不相同。

## 样例解释 1

$s_1 = $ acornistnt 是 $s_3 = $ constraint 的变位词。除此之外,没有其他满足条件的 $(i, j)$ 对,因此答案为 $1$。

## 样例解释 2

如果不存在满足条件的 $(i, j)$ 对,则输出 $0$。

## 样例解释 3

虽然这里无法给出这样的样例,但请注意,答案可能超出 $32$ 位整数型的范围。
上一题 去做题 下一题