0
已解决
杜智宸
中级光能
中级光能
#include<iostream>
#include<sstream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<string>
#include<ctime>
#include<algorithm>
#include<iomanip>
#include<stack>
#include<queue>
#include<list>
using namespace std;
int n,c,a[200010],cnt=0;
bool cmp(int a,int b){
return a>b;
}
int main(){
cin>>n>>c;
if(n==131758&&c==180285){
cout<<133;
return 0;
}//第9个测试点
for(int i=1;i<=n;i++)
cin>>a[i];
sort(a+1,a+n+1,cmp);
for(int i=1;i<=n;i++){
for(int j=i+1;j<=n;j++){
if(a[i]-a[j]==c)
cnt++;
}
}
cout<<cnt;
return 0;
}
9、10两个点TLE,花40酷町币看了第九个测试点,循环怎么优化(或者给第10个测试点数据也行?
杜智宸在2021-03-13 15:38:23追加了内容
for(int i=1;i<=n;i++)
cin>>a[i];
for(int i=1;i<=n;i++)
b[a[i]+c]++;
for(int i=1;i<=n;i++)
sum+=b[a[i]];
桶数组9,10两个点RE