#AT1405. C - Green Bin

C - Green Bin

C - Green Bin

Score : $300$ points

Problem Statement

We will call a string obtained by arranging the characters contained in a string $a$ in some order, an anagram of $a$.

For example, greenbin is an anagram of beginner. As seen here, when the same character occurs multiple times, that character must be used that number of times.

Given are $N$ strings $s_1, s_2, \ldots, s_N$. Each of these strings has a length of $10$ and consists of lowercase English characters. Additionally, all of these strings are distinct. Find the number of pairs of integers $i, j$ $(1 \leq i < j \leq N)$ such that $s_i$ is an anagram of $s_j$.

Constraints

  • $2 \leq N \leq 10^5$
  • $s_i$ is a string of length $10$.
  • Each character in $s_i$ is a lowercase English letter.
  • $s_1, s_2, \ldots, s_N$ are all distinct.

Input

Input is given from Standard Input in the following format:

NN

s1s_1

s2s_2

::

sNs_N

Output

Print the number of pairs of integers $i, j$ $(1 \leq i < j \leq N)$ such that $s_i$ is an anagram of $s_j$.


3
acornistnt
peanutbomb
constraint
1

$s_1 =$ acornistnt is an anagram of $s_3 =$ constraint. There are no other pairs $i, j$ such that $s_i$ is an anagram of $s_j$, so the answer is $1$.


2
oneplustwo
ninemodsix
0

If there is no pair $i, j$ such that $s_i$ is an anagram of $s_j$, print $0$.


5
abaaaaaaaa
oneplustwo
aaaaaaaaba
twoplusone
aaaabaaaaa
4

Note that the answer may not fit into a $32$-bit integer type, though we cannot put such a case here.