Submission #779565

#TimeUsernameProblemLanguageResultExecution timeMemory
779565Trisanu_DasGlobal Warming (CEOI18_glo)C++17
Compilation error
0 ms0 KiB
#include <bits/stdc++.h>
using namespace std;

int n, x, a[200005], BIT[2][200005], sort_a[200005];

void upd(int k, int idx, int val){
  for(int i = idx; i <= n; i += (i & (-i))) BIT[k][i] += val;
}

int qry(int k, int idx){
  int ans = 0;
  for(int i = idx; i; i -= (i & (-i))) ans += BIT[k][i];
  return ans;
}

int main(){
  cin >> n >> x;
  for(int i = 0; i < n; i++){
    cin >> a[i]; 
    sort_a[i] = a[i];
  }
  sort(sort_a, sort_a + n);
  for(int i = 0; i < n; i++){
    int last = lower__bound(sort_a, sort_a + n, a[i]) - sort_a;
    int a_ = qry(0, last), b = qry(0, lower__bound(sort_a, sort_a + n, a[i] + x) - sort_a), c = qry(1, last);
    upd(0, last, a_ + 1); upd(1, last, max(b, c) + 1);
  }
  cout << qry(1, n) << '\n';
}

Compilation message (stderr)

glo.cpp: In function 'int main()':
glo.cpp:24:16: error: 'lower__bound' was not declared in this scope
   24 |     int last = lower__bound(sort_a, sort_a + n, a[i]) - sort_a;
      |                ^~~~~~~~~~~~
glo.cpp:26:47: error: 'c' was not declared in this scope
   26 |     upd(0, last, a_ + 1); upd(1, last, max(b, c) + 1);
      |                                               ^