# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
425287 | zoooma13 | The short shank; Redemption (BOI21_prison) | C++14 | 1634 ms | 123960 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;
#define MAX_N 2000006
#define INF 0x3f3f3f3f
int sz;
pair <int ,int> tree[2*MAX_N];
void bld(vector<int>&arr){
for(int i=sz; i<(sz<<1); i++)
tree[i] = make_pair(arr[i-sz] ,i-sz);
for(int i=sz-1; i; i--)
tree[i] = min(tree[i<<1] ,tree[i<<1|1]);
}
void upd(int p ,int v){
for(tree[p+=sz].first = v; p>1; p>>=1)
tree[p>>1] = min(tree[p] ,tree[p^1]);
}
pair <int ,int> qry(int l ,int r){
auto res = make_pair(INF ,INF);
for(l+=sz ,r+=sz+1; l<r; l>>=1 ,r>>=1){
if(l&1) res = min(res ,tree[l++]);
if(r&1) res = min(res ,tree[--r]);
}
return res;
}
#define FL p<<1
#define FR p<<1|1
array <int ,3> tree2[4*MAX_N];
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... |