我才蓝号,怎么做呀,啊啊,有人能改一下吗:
#include <bits/stdc++.h>
using namespace std;
long long k[2000005];
int main() {
ios::sync_with_stdio(false);
cin.tie(0), cout.tie(0);
long long n, c;
cin >> n >> c;
for (long long i = 0; i < n; i++) {
cin >> k[i];
}
long long cnt = 0;
for (long long b = 0; b < n; b++) {
long long a = c + k[b];
long long L = 0, R = n - 1;
while (L < R) {
long long z = (L + R + 1) / 2;
if (k[z] < a) {
L = z ;
} else {
R = z - 1;
}
}
if (k[L] == a || k[L + 1] == a) {
long long L1, R1;
L1 = 0;
R1 = n - 1;
while (L1 < R1) {
long long z = (L1 + R1 + 1) / 2;
if (k[z] <= a) {
L1 = z;
} else {
R1 = z - 1;
}
}
if(a[L] == a) L--;
if(k[L1] == a)
cnt += L1 - L;
}
}
cout << cnt;
return 0;
}