# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
894535 | Andrey | Hedgehog Daniyar and Algorithms (IZhO19_sortbooks) | C++14 | 982 ms | 88320 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
vector<int> seg(4000001);
vector<int> wow(4000001);
int calc(int l, int r, int ql, int qr, int x) {
if(l == ql && r == qr) {
return seg[x];
}
int m = (l+r)/2,ans = 0;
if(qr <= m) {
ans = calc(l,m,ql,qr,x*2+1);
}
else if(ql > m) {
ans = calc(m+1,r,ql,qr,x*2+2);
}
else {
ans = calc(l,m,ql,m,x*2+1);
ans = max(ans,calc(m+1,r,m+1,qr,x*2+2));
}
return max(ans,wow[x]);
}
void upd(int l, int r, int ql, int qr, int x, int a) {
if(l == ql && r == qr) {
wow[x] = max(wow[x],a);
seg[x] = max(seg[x],a);
return;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |