传统题 2000ms 256MiB

It's Time for hrz to Sleep

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

hrz 学长一直被失眠所困扰,因为他想睡着的条件太苛刻了。只有当昨天和前天睡眠时间的差值为 xx 时,他今天才可以安稳地睡着。

由于长期失眠,hrz 学长的记忆力出现了一个严重的问题——他记不住前两天的睡觉时长了!

但是他能模糊的记起很多数字,他坚信前两天的睡眠时长就在其中。

你现在要做的是从这些数字中找出两个差值为 xx 的数字分别作为 hrz 学长昨天和前天的睡眠时长,并统计可行解的数量。特别的,x≠0x \ne 0 。

形式化的:给你一个长度为 nn 的数组 a1,a2,…,ana_1,a_2,\dots,a_n,以及一个整数 xx,请你求满足 ai−aj=xa_i-a_j=x 的有序二元对 (i,j)(i,j) 的数量,其中 i≠ji \ne j,不同位置的相同数字视为不同。

输入格式

第一行输入一个正整数 TT,表示数据组数, 接下来输入 TT 组测试数据。每组测试数据包含两行:

第一行输入一个正整数 nn ,和一个整数 xx。

第二行输入 nn 个整数 a1,a2,…,ana_1,a_2,\dots,a_n。

保证单个测试点内所有测试数据的 nn 之和不超过 10510^5。

输出格式

对于每组数据输出一个整数,表示找到的满足条件的有序二元对数量。

3
5 2
1 2 3 4 5
4 1
1 1 2 3
5 -3
-1 -1 0 1 2
3
3
2
2
6 5
5 5 0 0 5 5
6 -1
-2 -2 1 2 3 3
8
3

说明/提示

数据规模与约定

  • 1≤T≤30001 \le T \le 3000;
  • 1≤n≤1051\le n\le 10^5;
  • −109≤x≤109, x≠0-10^9 \le x\le10^9,\ x\ne 0;
  • −109≤ai≤109-10^9 \le a_i\le 10^9;
  • 对于所有测试用例,∑n≤105\sum n \le 10^5。

2026 TGU-ACM 程序设计新生赛

未参加
状态
已结束
规则
XCPC
题目
12
开始于
2026-10-11 13:00
结束于
2026-10-11 18:00
持续时间
5 小时
主持人
参赛人数
68