Submission #618041

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
6180412022-08-01 20:02:03CaroLindaDistributing Candies (IOI21_candies)C++17
100 / 100
340 ms36932 KiB
#include "candies.h"
#include <bits/stdc++.h>
#define ll long long
const int MAXN = 2e5+10;
using namespace std;
ll smx[MAXN*4], smn[MAXN*4], soma[MAXN*4];
int m(int l, int r){
return (l+r)>>1;
}
void update(int pos, int l, int r, int id, ll newVal){
if(l == r){
smx[pos] = smn[pos] = soma[pos] = newVal;
smx[pos] = max(smx[pos], 0LL);
smn[pos] = min(smn[pos], 0LL);
return;
}
if(id <= m(l,r))
update(pos<<1 , l , m(l,r), id, newVal);
else update(pos<<1|1, m(l,r)+1, r, id, newVal);
smx[pos] = max(smx[pos<<1], soma[pos<<1]+smx[pos<<1|1]);
smn[pos] = min(smn[pos<<1], soma[pos<<1]+smn[pos<<1|1]);
soma[pos] = soma[pos<<1]+soma[pos<<1|1];
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
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...