아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

안녕 2020 안녕 2021

시간 제한1.5초메모리 제한512 MB

요약
n개의 정수 중 두 수의 합이 앞 네 자리가 2020이고 뒤 네 자리가 2021인 경우의 수를 센다.
난이도

보통10점 중 7점

유형
해시맵, 수학, 구현, 조합론
정답자
아직 제출이 없습니다

문제

2020년을 보내고 2021년을 맞이하는 기념으로 Albert는 재미있는 문제를 풀기로 했다. 양의 정수 중 첫 네 자리가 "2020"이고 마지막 네 자리가 "2021"이면 안녕한 정수라고 정의하자. 가령 202021이나 20202021은 안녕한 정수이고, 2020021이나 2020221은 안녕한 정수가 아니다.

Albert는 n개의 정수 A[1], A[2], ..., A[n] 중 두 수를 골라 더했을 때 그 합이 안녕한 정수가 되는 쌍의 개수를 알고 싶다. 즉, 1 ≤ i < j ≤ n을 만족하는 (i, j) 쌍 중 A[i] + A[j]가 안녕한 정수인 쌍의 개수를 알고 싶다. 예를 들어 A = [101010, 101010, 101011, 101011], 즉 n = 4개의 정수가 있다고 하자. 이 경우 A[1] + A[3] = A[1] + A[4] = A[2] + A[3] = A[2] + A[4] = 202021이므로 총 4개의 쌍이 존재한다 ((1, 3), (1, 4), (2, 3), (2, 4)).

입력으로 n개의 정수가 주어졌을 때, 합이 안녕한 정수가 되도록 하는 쌍의 개수를 출력하시오.

입력

첫 줄에 테스트 케이스의 수 T가 주어진다. 각 테스트 케이스는 두 줄로 구성된다.

첫 줄에 정수의 개수 n이 주어진다. 다음 줄에 n개의 정수가 공백으로 구분되어 주어진다.

출력

각 테스트 케이스에 대해 합이 안녕한 정수가 되는 쌍의 개수를 출력한다.

제한

  • 1 ≤ T ≤ 10
  • 2 ≤ n ≤ 100,000
  • -228 ≤ A[i] ≤ 228

예제1

  1. 예제 1

    입력
    3
    4
    101010 101010 101011 101011
    5
    100000 100000 100000 101011 101011
    4
    202021 0 1 202020
    
    예상 출력
    4
    0
    2