蒟蒻求求大佬67分
查看原帖
蒟蒻求求大佬67分
788995
Blanchard楼主2024/1/18 05:31
#define _CRT_SECURE_NO_WARNINGS 1
#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n, c;
    cin >> n >> c;

    int a[100010];
    for (int i = 0; i < n; i++)
        cin >> a[i];

    int sum = 0;
    sort(a, a + n);
    int b[100010] = { 0 };
    for (int i = 0; i < n; i++)
        b[a[i]]++;
    for (int k = 0; k < n; k++)
    {
        int l = 0, r = k - 1;
        while (l <= r)
        {
            int mid = l + (r - l) / 2;
            if (a[k] - a[mid] == c)
            {
                sum += b[a[mid]];
                break;
            }
            else if (a[k] - a[mid] > c)
            {
                l = mid + 1;
            }
            else
            {
                r = mid - 1;
            }
        }
    }
    cout << sum;
    return 0;
}

2024/1/18 05:31
加载中...