Даны \(n\) строк, каждая имеет длину \(2\) и состоит из строчных латинских букв от 'a' до 'k'. Выведите количество пар индексов \((i, j)\) таких, что \(i < j\) и \(i\)-я строка с \(j\)-й строкой различаются ровно в одной позиции.
Другими словами найдите количество пар \((i, j)\) (\(i < j\)) таких, что \(i\)-я строка с \(j\)-й строкой различаются ровно в одной позиции \(p\) (\(1 \leq p \leq 2\)), то есть \({s_{i}}_{p} \neq {s_{j}}_{p}\).
Ответ может не влезать в 32-разрядный целочисленный тип, поэтому вам следует использовать 64-разрядные целые числа, такие как long long в C++, чтобы избежать переполнения целочисленного типа.
Выходные данные
Для каждого набора выведите единственное число — количество пар \((i, j)\) (\(i < j\)) таких, что \(i\)-я строка с \(j\)-й строкой различаются ровно в одной позиции \(p\) (\(1 \leq p \leq 2\)), то есть \({s_{i}}_{p} \neq {s_{j}}_{p}\).
Пожалуйста, обратите внимание, что ответ для некоторых тестовых примеров не будет помещаться в 32-разрядный целочисленный тип, поэтому вы должны использовать по крайней мере 64-разрядный целочисленный тип в вашем языке программирования (например, long long для C++).
Примечание
В первом примере ровно в одной позиции различаются следующие пары: («ab», «cb»), («ab», «db»), («ab», «aa»), («cb», «db») and («cb», «cc»).
Во втором примере ровно в одной позиции различаются следующие пары: («aa», «ac»), («aa», «ca»), («cc», «ac»), («cc», «ca»), («ac», «aa») and («ca», «aa»).
В третьем примере нет пар, удовлетворяющих условиям.
Примеры
| № | Входные данные | Выходные данные |
|
1
|
4 6 ab cb db aa cc ef 7 aa bb cc ac ca bb aa 4 kk kk ab ab 5 jf jf jk jk jk
|
5
6
0
6
|