Submission #81338

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
813382018-10-24 12:36:41anaonoprishviliCave (IOI13_cave)C++14
100 / 100
442 ms692 KiB
#include "cave.h"
#include<bits/stdc++.h>
int ans[50005],ans1[50005],s[50005],fix[50005];
void exploreCave(int N)
{
for(int i=0; i<N; i++)
{
for(int j=0;j<N;j++) if(fix[j]==1) s[j]=ans[j]; else s[j]=0;
int x=tryCombination(s);
int k=0;
if(x==-1 || x>i) k=1;
int t=k, l=0, r=N-1, p=0;
while(l<=r)
{
int m=(l+r)/2;
for(int j=l;j<=m;j++)
if(fix[j]==0) s[j]=1-s[j];
x=tryCombination(s);
int c=0;
if(x==-1 || x>i) c=1;
if(k!=c) r=m-1, p=m;
else l=m+1;
k=c;
}
ans1[p]=i; fix[p]=1;
if (t==1) ans[p]=0; else ans[p]=1;
}
answer(ans,ans1);
}
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
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...