CF BUDDY
← Problems·

1669E · 2-Letter Strings

1200 · data structures, math, strings

Problem: Given nn strings, each of length 22, consisting of lowercase Latin alphabet letters from 'a' to 'k', output the number of pairs of indices (i,j)(i, j) such that i<ji < j and the ii-th string and the jj-th string differ in exactly one position.

In other words, count the number of pairs (i,j)(i, j) (i<ji < j) such that the ii-th string and the jj-th string have exactly one position pp (1p21 \leq p \leq 2) such that sipsjp{s_{i}}_{p} \neq {s_{j}}_{p}.

The answer may not fit into 32-bit integer type, so you should use 64-bit integers like long long in C++ to avoid integer overflow.

Input Format: The first line of the input contains a single integer tt (1t1001 \le t \le 100) — the number of test cases. The description of test cases follows.

The first line of each test case contains a single integer nn (1n1051 \le n \le 10^5) — the number of strings.

Then follows nn lines, the ii-th of which containing a single string sis_i of length 22, consisting of lowercase Latin letters from 'a' to 'k'.

It is guaranteed that the sum of nn over all test cases does not exceed 10510^5.

Output Format: For each test case, print a single integer — the number of pairs (i,j)(i, j) (i<ji < j) such that the ii-th string and the jj-th string have exactly one position pp (1p21 \leq p \leq 2) such that sipsjp{s_{i}}_{p} \neq {s_{j}}_{p}.

Please note, that the answer for some test cases won't fit into 32-bit integer type, so you should use at least 64-bit integer type in your programming language (like long long for C++).

Note: For the first test case the pairs that differ in exactly one position are: ("ab", "cb"), ("ab", "db"), ("ab", "aa"), ("cb", "db") and ("cb", "cc").

For the second test case the pairs that differ in exactly one position are: ("aa", "ac"), ("aa", "ca"), ("cc", "ac"), ("cc", "ca"), ("ac", "aa") and ("ca", "aa").

For the third test case, the are no pairs satisfying the conditions.

Sample Cases

Case 1

Input

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

Output

5
6
0
6

Similar problems

00:00:00
Loading editor…
Welcome! I'm your coding tutor for this problem. Use the chips below to reveal stored hints or get AI feedback on your code. I'll guide you step by step — never giving away the solution.

Sign in to unlock AI tutor feedback