Сет#10839

Сет

1 секунда
128 мегабайтів
Складна

У популярній картковій грі SET мета гравця полягає в тому, щоб знайти певну трійку карт з особливими властивостями, яку називають сетом. На кожній картці зображено фігурки, які відрізняються за кількістю, формою, прозорістю та кольором.

Марін та Йосип нещодавно купили колоду цих карт і тепер не можуть відірватися від гри. Вони навчилися так швидко знаходити сети, що незабаром стало нудно грати з картами, які визначаються лише чотирма властивостями. Тому вони вирішили спробувати узагальнену версію гри.

У них є колода з різних карт. Кожна карта представлена послідовністю з символів, кожен з яких є одним із , або . Порядок карт у колоді не має значення.

Невпорядкована трійка карт називається сетом, якщо для кожної з позицій три символи, що відповідають трьом картам, або всі однакові, або всі попарно різні. Наприклад, три карти , і утворюють сет, оскільки символи на першій і третій позиціях однакові (це і відповідно), а символи на другій і четвертій позиціях попарно різні (, , у довільному порядку).

Дивлячись на ці карт на столі, вони зацікавились: скільки невпорядкованих трійок з цих карт утворюють сет? Напишіть програму, що дасть відповідь на їхнє запитання.

Вхідні дані

Перший рядок містить цілі числа і (1 \le k \le 12, 1 \le n \le 3^k) — кількість карт у колоді та кількість властивостей однієї карти відповідно.

Кожен з наступних рядків містить послідовність із символів, що представляють карту. Кожен символ — це , або . Різні рядки містять різні комбінації символів.

Вихідні дані

Виведіть кількість невпорядкованих трійок, які утворюють сет.

Приклади

Приклад 1

Loading
Loading

Приклад 2

Loading
Loading

Приклад 3

Loading
Loading