AtCoder Beginner Contest 137 C - Green Bin【Python】

https://atcoder.jp/contests/abc137/tasks/abc137_c

AtCoder ProblemsのRecommendationで Difficulty: 597、Solve Probability:
47%でした。
文字列をソートして辞書でカウントして、文字列ごとにカウント数から2個選ぶ組み合わせの数を求めることで解くことができました。

import math
def combinations_count(n, r):
    return math.factorial(n) // (math.factorial(n - r) * math.factorial(r))
N = int(input())
d = defaultdict(int)
for i in range(N):
    s = input()
    s = ''.join(sorted(s))
    d[s] += 1
ans = 0
for v in d.values():
    if v > 1:
        ans += combinations_count(v, 2)
print(ans)