Submission #652815

#TimeUsernameProblemLanguageResultExecution timeMemory
652815amukkalirMonkey and Apple-trees (IZhO12_apple)C++17
0 / 100
1 ms340 KiB
#include <bits/stdc++.h> using namespace std; const int nax = 1e6; int tree[4*nax+5]; bool lazy[4*nax+5]; int m; void cek (int idx, int l, int r) { if (!lazy[idx]) return; tree[idx] = r-l+1; int m = (l+r)>>1; if (l!=r) { lazy[idx<<1] = 1; lazy[idx<<1|1] = 1; } lazy[idx]=0; } void upd (int fr, int to, int idx = 1, int l = 1, int r = 1e9) { cek(idx,l,r); if (fr <= l && r <= to) { lazy[idx]=1; cek(idx,l,r); } else if (r < fr || l > to) { return; } else { int m = (l+r)>>1; upd(fr, to, idx<<1,l,m); upd(fr, to, idx<<1|1, m+1,r); tree[idx] = tree[idx<<1] + tree[idx<<1|1]; } } int get (int fr, int to, int idx = 1, int l = 1, int r = 1e9) { cek(idx, l, r); if (fr <= l && r <= to) return tree[idx]; else if (r < fr || l > to) return 0; else { int m = (l+r)>>1; return get(fr, to, idx<<1, l, m) + get(fr, to, idx<<1|1, m+1, r); } } signed main() { scanf("%d", &m); int c = 0; while (m--) { int d, x, y; scanf("%d %d %d", &d, &x, &y); x += c; y += c; if (d == 1) { int ans = get(x, y); c += ans; printf("%d\n",ans); } else { upd(x,y); } } } /* */

Compilation message (stderr)

apple.cpp: In function 'void cek(int, int, int)':
apple.cpp:12:9: warning: unused variable 'm' [-Wunused-variable]
   12 |     int m = (l+r)>>1;
      |         ^
apple.cpp: In function 'int main()':
apple.cpp:45:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   45 |     scanf("%d", &m);
      |     ~~~~~^~~~~~~~~~
apple.cpp:49:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   49 |         scanf("%d %d %d", &d, &x, &y);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...