Xóa hai phần tử

Đề bài

Mô tả

Cho một mảng a gồm n số nguyên. Gọi k là trung bình cộng của các phần tử trong mảng, tức là k=a1+a2++ann (lưu ý k không nhất thiết là số nguyên).

Bạn cần xóa đúng hai phần tử khỏi mảng sao cho trung bình cộng của n2 phần tử còn lại vẫn bằng k.

Hãy đếm số cặp vị trí [i,j] với i<j sao cho nếu xóa hai phần tử tại các vị trí này thì trung bình cộng của n2 phần tử còn lại bằng đúng trung bình cộng k của cả mảng ban đầu.

Dữ liệu vào

  • Dòng đầu chứa một số nguyên t, số lượng bộ dữ liệu.
  • Với mỗi bộ dữ liệu:
    • Dòng đầu chứa một số nguyên n, số phần tử của mảng.
    • Dòng thứ hai chứa n số nguyên a1,a2,,an.

Dữ liệu ra

Với mỗi bộ dữ liệu, in ra một số nguyên là số cặp vị trí [i,j] (i<j) thỏa mãn yêu cầu.

Ràng buộc

  • 1t104
  • 3n2·105
  • 0ai109
  • Tổng của n trên tất cả các bộ dữ liệu không vượt quá 2·105.

Ví dụ

Input Output Giải thích
4
4
8 8 8 8
3
50 20 10
5
1 4 7 3 5
7
1 2 3 4 5 6 7
6
0
2
3
Bộ 1: mọi phần tử bằng nhau nên xóa cặp nào cũng được, có (42)=6 cặp. Bộ 2: không có cách nào. Bộ 3: có thể xóa cặp vị trí (1,3) hoặc (4,5). Bộ 4: có 3 cặp thỏa mãn.
1
3
228 1337 228
0 Không có cặp nào giữ nguyên được trung bình cộng.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0