题目 思路 1.暴力枚举 直接枚举所有下标(i,j),检查是否满足ai-aj,时间复杂度O(n^2) 对于2*10^6,显然会超时. 2.哈希表 记录每个数出现的次数 检查ai+x是否存在 代码 n,x=map(int,input().split()) a = list(map(int,input().split())) count=0 T = {} for i in a: T[i]=T.get(i,0)+1 for i in T.keys(): if (i+x) in T: count+=T[i]*T[i+x] print(count)