비슷한 번호판

아직 제출이 없습니다시간 제한1초메모리 제한512 MB

문제

Albert가 다니는 회사의 주차장에 지금 자동차 n대 일렬로 (좌에서 우로) 주차되어있다. 편의상 차는 좌측부터 순서대로 1번에서 n번까지 번호로 나타내자. i번 차의 번호판에 적힌 문자열을 x[i]라 하자. n개의 문자열은 서로 다르며, 영어 대/소문자 (a-z와 A-Z)로만 구성된 길이 k인 문자열이다. 즉, 모든 번호판의 길이는 같다.

임의의 두 자동차 i, j 에 대하여 번호판 x[i] 와 x[j]가 아래 조건을 모두 만족하면 두 자동차는 비슷한 번호판을 가졌다고 한다:

  • 26가지의 각 알파벳에 대하여, 대/소문자를 무시했을 때 해당 알파벳이 x[i]에 적힌 횟수와 x[j]에 적힌 횟수가 같다 (이 조건은 각 알파벳에 대해 만족해야 한다).
  • x[i]에 적힌 대문자의 개수와 x[j]에 적힌 대문자의 개수가 같다.

예를 들어, n = 4, k = 3 이고 x = ["AtY", "YtA", "aTy", "Ayt"]라 하자.

  • 1번차와 2번차의 번호판은 비슷하다: 두 번호판 모두 A/a 1개, T/t 1개, Y/y 1개씩을 포함하고 대문자는 3글자 중 2글자이다.
  • 3번차와 4번차의 번호판은 비슷하다: 두 번호판 모두 A/a 1개, T/t 1개, Y/y 1개씩을 포함하고 대문자는 3글자 중 1글자이다.
  • 1번차와 3번차의 번호판은 비슷하지 않다: 1번차는 대문자 2개, 3번차는 대문자 1개를 포함한다 (단, 첫 번째 조건은 만족한다).

입력으로 n, k 그리고 x[1], ..., x[n]이 주어졌을 때, 비슷한 번호판 쌍의 수를 구해서 Albert에게 알려주자.

입력

첫 줄에 테스트 케이스의 수 T가 주어진다.

각 테스트 케이스의 첫 줄에는 n과 k개 공백으로 구분되어 주어진다.

두 번째 줄에는 길이가 k인 문자열 n개가 공백으로 구분되어 주어진다.

출력

각 테스트 케이스의 정답을 각 줄에 출력한다.

제한

  • 1 ≤ T ≤ 20
  • 1 ≤ n ≤ 10,000
  • 1 ≤ k ≤ 20