Submission #429095

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
4290952021-06-15 17:24:11charterlaHandcrafted Gift (IOI20_gift)C++14
100 / 100
304 ms27748 KiB
#include "gift.h"
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct Range{
int ls,rs,self;
}one[500005],two[500005];
int cn[2]={0,0};
bool cmp(Range a,Range b){
return a.ls==b.ls?a.rs<b.rs:a.ls<b.ls;
}
bool tag[2000005];
bool check(int ls,int rs,int ld,int rd,int now){
//cout<<ls<<","<<rs<<":"<<ld<<","<<rd<<"-->"<<now<<endl;
if(ls<=ld && rd<=rs)return tag[now];
int mid=(ld+rd)/2;
if(mid>=ls && !check(ls,rs,ld,mid,now<<1))return false;
if(mid+1<=rs && !check(ls,rs,mid+1,rd,now<<1|1))return false;
return true;
}
int construct(int n, int r, vector<int> a, vector<int> b, vector<int> x) {
for(int i=0;i<r;i++){
if(x[i]==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...