Submission #491271

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
4912712021-12-01 09:25:38mosiashvililukaDistributing Candies (IOI21_candies)C++17
100 / 100
1046 ms38436 KiB
#include<bits/stdc++.h>
#include "candies.h"
using namespace std;
const long long N=1000000000000000000LL,S=800003,T=800004;
long long a,b,c,d,e,i,j,ii,jj,zx,xc,tes,t,C[200009],L[200009],R[200009],V[200009],f[200009],pi,F[200009],mn,mx,l,r,z,za,seg[800009],segmn[800009],segmx[800009],lef,rig,mid;
pair <long long, long long> p[800009];
vector <int> ans;
void upd(int rr){
if(rr==0) return;
seg[rr]=seg[rr*2]+seg[rr*2+1];
segmn[rr]=min(segmn[rr*2],seg[rr*2]+segmn[rr*2+1]);
segmx[rr]=max(segmx[rr*2],seg[rr*2]+segmx[rr*2+1]);
upd(rr/2);
}
void UPD(int q){
seg[q+za-1]=f[q];
segmn[q+za-1]=f[q];
segmx[q+za-1]=f[q];
upd((q+za-1)/2);
}
void read(int q, int w, int rr){
if(q>r||w<l) return;
if(q>=l&&w<=r){
seg[T]=seg[S]+seg[rr];
segmn[T]=min(segmn[S],seg[S]+segmn[rr]);
segmx[T]=max(segmx[S],seg[S]+segmx[rr]);
swap(seg[S],seg[T]);swap(segmn[S],segmn[T]);swap(segmx[S],segmx[T]);
return;
}
read(q,(q+w)/2,rr*2);
 
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
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...