题解:P1296 奶牛的耳语

· · 题解

本题难度:橙。
考查算法:二分。
题目意思已经很清晰了,那么我们讲两种思路。

#include<bits/stdc++.h>
using namespace std;
#define int long long
const int maxn=1e6+5;
int n,k;
int a[maxn];
signed main(){
    cin>>n>>k;
    for(int i=1;i<=n;i++){
        cin>>a[i];
    }
    sort(a+1,a+1+n);
    int ans=0;
    for(int i=1;i<=n;i++){
        ans+=upper_bound(a+1,a+1+n,a[i]+k)-a-i-1;
    }
    cout<<ans;
    return 0;
}