Submission #907666

#TimeUsernameProblemLanguageResultExecution timeMemory
907666androSterilizing Spray (JOI15_sterilizing)C++14
10 / 100
64 ms9408 KiB
#include <bits/stdc++.h> #define int long long using namespace std; const int N = 1e5 + 5; int n; struct segtree{ int t[4*N]; int query(int v,int tl,int tr,int l,int r){ if(tl>r||tr<l)return 0; if(tl>=l&&tr<=r)return t[v]; int tm=(tl+tr)/2; return query(v*2,tl,tm,l,r)+query(v*2+1,tm+1,tr,l,r); } void update(int v,int tl,int tr,int index,int value){ if(tl==tr)t[v]=value; else { int tm=(tl+tr)/2; if(index<=tm)update(v*2,tl,tm,index,value); else update(v*2+1,tm+1,tr,index,value); t[v]=t[v*2]+t[v*2+1]; } } int query(int l, int r) { return query(1, 1, n, l, r); } void update(int i, int value) { update(1, 1, n, i, value); } }seg; signed main() { ios::sync_with_stdio(false); cin.tie(nullptr); int q, k; cin >> n >> q >> k; vector<int> a(n + 1); for(int i = 1; i <= n; i++) { cin >> a[i]; seg.update(i, a[i]); } set<int> s; for(int i = 1; i <= n; i++) { s.insert(i); } vector<int> P(n + 1); const int limit = 100; while(q--) { int o; cin >> o; if(o == 1) { int l, r; cin >> l >> r; seg.update(l, r); } else if(o == 2) { int l, r; cin >> l >> r; } else { int l, r; cin >> l >> r; cout << seg.query(l, r) << "\n"; } } }

Compilation message (stderr)

sterilizing.cpp: In function 'int main()':
sterilizing.cpp:51:15: warning: unused variable 'limit' [-Wunused-variable]
   51 |     const int limit = 100;
      |               ^~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...