100 atcoder#ABC137C. [ABC137C] Green Bin

[ABC137C] Green Bin

题目描述

文字列 a a に含まれる文字を何らかの順序で並べることで得られる文字列を a a アナグラム と呼びます。

例えば、greenbinbeginner のアナグラムです。このように、同じ文字が複数回現れるときはその文字をちょうどその回数だけ使わなければなりません。

N N 個の文字列 s1, s2, , sN s_1,\ s_2,\ \ldots,\ s_N が与えられます。それぞれの文字列は長さが 10 10 で英小文字からなり、またこれらの文字列はすべて異なります。二つの整数 i, j i,\ j (1  i < j  N) (1\ \leq\ i\ <\ j\ \leq\ N) の組であって、si s_i sj s_j のアナグラムであるようなものの個数を求めてください。

输入格式

入力は以下の形式で標準入力から与えられる。

N N s1 s_1 s2 s_2 : : sN s_N

输出格式

二つの整数 i, j i,\ j (1  i < j  N) (1\ \leq\ i\ <\ j\ \leq\ N) の組であって、si s_i sj s_j のアナグラムであるようなものの個数を出力せよ。

题目大意

我们将调用通过以某种顺序排列字符串 aa 中包含的字符而获得的字符串,即 anagram

例如,greenbinbegineranagram。 如此处所示,当同一字符多次出现时,该字符必须使用该次数。

给定 NN 个字符串 s1,s2,,sNs_1,s_2,\ldots,s_N。每个字符串的长度为 1010,由小写英文字符组成。 此外,所有这些字符串都是不同的。 找出整数对的数量 (1i<jN)(1 \leq i < j \leq N),使 sis_isjs_janagram

3
acornistnt
peanutbomb
constraint
1
2
oneplustwo
ninemodsix
0
5
abaaaaaaaa
oneplustwo
aaaaaaaaba
twoplusone
aaaabaaaaa
4

提示

制約

  • 2  N  105 2\ \leq\ N\ \leq\ 10^5
  • si s_i は長さ 10 10 の文字列である。
  • si s_i の各文字は英小文字である。
  • s1, s2, , sN s_1,\ s_2,\ \ldots,\ s_N はすべて異なる。

Sample Explanation 1

s1 = s_1\ = acornistnts3 = s_3\ = constraint のアナグラムです。他に si s_i sj s_j のアナグラムであるような i, j i,\ j の組はないため、答えは 1 1 です。

Sample Explanation 2

si s_i sj s_j のアナグラムであるような i, j i,\ j の組がないときは 0 0 と出力してください。

Sample Explanation 3

ここにそのようなケースを置くことはできませんが、答えは 32 32 bit 整数型に収まらない可能性があるので注意してください。