Ctrl K

Пары с одинаковым набором букв

Лёгкая
Дан массив строк tags. Назовём две строки похожими, если в них встречаются ровно одни и те же буквы — сколько раз встречается каждая буква и в каком порядке они стоят, значения не имеет. Например, «noon» и «on» похожи, «note» и «tone» тоже, а «not» и «note» — нет. Посчитайте, сколько существует пар индексов (i, j), где i < j, таких что строки tags[i] и tags[j] похожи.
Пример 1
tags=['mama', 'am', 'ma', 'stop', 'pots', 'tops', 'top'] → 6

Строки «mama», «am» и «ma» состоят из букв m и a — это три пары. Строки «stop», «pots» и «tops» состоят из букв s, t, o, p — ещё три пары. У «top» нет буквы s, поэтому пары ей не находится. Итого 6.

Пример 2
tags=['x', 'y', 'xy'] → 0

Наборы букв {x}, {y} и {x, y} попарно различны, подходящих пар нет.

Пример 3
tags=['zz', 'z', 'zzz'] → 3

Все три строки состоят только из буквы z, поэтому подходит каждая из трёх пар.

Ограничения
  • 1 ≤ tags.length ≤ 100
  • 1 ≤ tags[i].length ≤ 100
  • tags[i] состоит только из строчных латинских букв
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСлова с рабочих клавиш ЛёгкаяСлова из набора плашек Лёгкаяk-е слово без повторов ЛёгкаяСлова, единственные в обоих списках ЛёгкаяНоски по парам Лёгкая
загружаем Python…
Вход
tags=['mama', 'am', 'ma', 'stop', 'pots', 'tops', 'top']
Ожидается
6

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 103 теста на сервере, включая скрытые.