84分求调
  • 板块P1102 A-B 数对
  • 楼主kpmark
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/7/10 19:56
  • 上次更新2024/7/10 20:52:46
查看原帖
84分求调
1248282
kpmark楼主2024/7/10 19:56

2、3TLE了,求大佬看看代码有啥问题。

#include <algorithm>
#include <iostream>
#define ll long long
using namespace std;

ll a[2000005];
int main() {
    int N;
    ll C;
    cin >> N >> C;
    for (int i = 0; i < N; i++) {
        cin >> a[i];
    }

    sort(a, a + N, greater<ll>());

    int cnt = 0;

    for (int i = 0; i < N; i++) {
        ll* index = a + 1 + i;
        ll B = a[i] - C;
        while (lower_bound(index, a + N, B, greater<ll>()) != a + N &&
               a[lower_bound(index, a + N, B, greater<ll>()) - a] == B) {
            cnt++;
            index = lower_bound(index, a + N, B, greater<ll>()) + 1;
        }
    }

    cout << cnt;
    return 0;
}
2024/7/10 19:56
加载中...