제출 #501074

#제출 시각아이디문제언어결과실행 시간메모리
501074600MihneaPairs (IOI07_pairs)C++17
30 / 100
19 ms1596 KiB
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

signed main() {
  ios::sync_with_stdio(0); cin.tie(0);


  int B;
  cin >> B;
  ///assert(B == 1 || B == 2 || B == 3);

  if (B == 1) {
    int n, d, _;
    cin >> n >> d >> _;
    vector<int> a(n);
    for (auto &x : a) {
      cin >> x;
    }
    sort(a.begin(), a.end());
    ll sol = 0;
    int C = 0, c = 0;
    for (int i = 0; i < n; i++) {
      int low = a[i] - d, high = a[i] + d;
      while (C < n && a[C] <= high) {
        C++;
      }
      while (c < n && a[c] < low) {
        c++;
      }
      sol += C - c;
    }
    sol -= n;
    sol /= 2;
    cout << sol << "\n";
    exit(0);
  }

  assert(0);

  return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...