一个,哦不两个函数,直接拿捏
2024-12-30 19:38:55
发布于:上海
64阅读
0回复
0点赞
#include<iostream>
#include<algorithm>
using namespace std;
int main(){
long long n,c,a[200010];
cin>>n>>c;
for(int i=0;i<n;i++)
cin>>a[i];
sort(a,a+n);
long long l=n-1,mid,ans=0;
while(l>=0){
long long b=a[l]-c,pos=upper_bound(a,a+n,b)-a,pos1=lower_bound(a,a+n,b)-a;
ans+=pos-pos1;
l--;
}
cout<<ans;
return 0;
}
全部评论 2
有比这个更简单的嘛
2024-12-30 来自 上海
1#include <bits/stdc++.h> using namespace std; int main(){ int a,b; cin >> a >> b; int n[1000005]={},m[10000005]={}; for(int i=1;i<=a;i++)cin >> n[i]; for(int i=1;i<=a;i++)m[n[i]]++; int num=0; for(int i=1;i<=a;i++){ num+=m[n[i]-b]; }cout << num; return 0; }
2025-06-22 来自 浙江
0
有帮助,赞一个