Submission #389121

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
3891212021-04-13 16:54:24couplefireFood Court (JOI21_foodcourt)C++17
100 / 100
748 ms56348 KiB
#include <bits/stdc++.h>
using namespace std;
#define MAXN 262144
#define INF 1000000000000000009ll
struct node{
long long psum = 0, nsum = 0;
pair<long long, int> minsum = {0, -1};
node(){}
};
node tree[2*MAXN];
void build(int v = 1, int tl = 0, int tr = MAXN-1){
tree[v].minsum.second = tl;
if(tl == tr) return;
int tm = (tl+tr)/2;
build(v*2, tl, tm); build(v*2+1, tm+1, tr);
}
void upd(int id, long long val, int v = 1, int tl = 0, int tr = MAXN-1){
if(tl > id || tr < id) return;
if(tl == tr){
if(val > 0) tree[v].psum = val, tree[v].nsum = 0;
else tree[v].nsum = -val, tree[v].psum = 0;
tree[v].minsum.first = val;
return;
}
int tm = (tl+tr)/2;
upd(id, val, v*2, tl, tm); upd(id, val, v*2+1, tm+1, tr);
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...