有一个测试点错了,测试点#3,200000个数,c=1,100000个1和100000个2,正确输出是10000000000;我试了20 、 1和200 、 1输出是100和10000答案都没错;那个错误的测试点我不知道我的代码输出的是什么,200000个数复制不上去,一复制电脑直接卡死;按理来说一样的格式20 、1和200 、 1都对了,200000、 1,不存在会错,把我直接搞蒙了;有没有大佬看出是什么原因
#include<iostream>
#include<unordered_map>
#include<algorithm>
using namespace std;
const int N=2e5+5;
int a[N];
int main(){
int n,c,count=0;
unordered_map<int,int> mp;
cin>>n>>c;
for(int i=1;i<=n;i++){
cin>>a[i];
mp[a[i]]++;
}
sort(a+1,a+n+1);
for(int i=n;a[i]>=c;i--){
count+=mp[a[i]-c];
}
cout<<count;
return 0;
}