#include<bits/stdc++.h>
#define debug(x) cerr << #x << " " << x << "\n"
#define debugs(x) cerr << #x << " " << x << " "
#pragma GCC optimize("Ofast")
#define int long long
using namespace std;
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
int range_rng(int l, int r)
{
    return uniform_int_distribution<int>(l,r)(rng);
}
/*s
struct nush
{
    int val;
    int poz;
};
bool cmp(nush a, nush b)
{
    return a.val<b.val;
}
*/
int v[100005];
int ans[100005];
signed main()
{
    /*
    ifstream fin("camere.in");
    ofstream fout("camere.out");
    */
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int b,n,m,d,i,ans,l,r,pas,lim;
    cin >> b >> n >> d >> m;
    if (b==1)
    {
        for (i=1;i<=n;i++)
        {
             cin >> v[i];
        }
        sort(v+1,v+1+n);
        ans=0;
        for (i=1;i<=n;i++)
        {
             l=0;
             lim=v[i]-d;
             pas=(1<<17);
             while (pas)
             {
                 if (l+pas<=n && v[l+pas]<lim)
                     l+=pas;
                 pas=pas/2;
             }
             l++;
             r=0;
             lim=v[i]+d;
             pas=(1<<17);
             while (pas)
             {
                 if (r+pas<=n && v[r+pas]<=lim)
                     r+=pas;
                 pas=pas/2;
             }
             ans+=r-l+1-1;
        }
        cout << ans/2;
    }
    return 0;
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict | Execution time | Memory | Grader output | 
|---|
| Fetching results... |