이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "cave.h"
void exploreCave(int N) {
int S[N],D[N];
for(int i=0;i<N;i++){
S[i]=0;
D[i]=-1;
}
int i=0;
while(i<N){
int ini=0, fim=N-1,atual=-1;
int meio=(ini+fim)/2;
if(tryCombination(S)>i or tryCombination(S)==-1){
atual=0;
}
else{
atual=1;
}
while(ini<fim){
meio=(ini+fim)/2;
for(int j=ini;j<=meio;j++){
if(D[j]==-1)S[j]=1;
}
int a=tryCombination(S);
if((atual==1 and (a>i or a==-1)) or (atual==0 and a==i)){
for(int j=ini;j<=meio;j++){
if(D[j]==-1)S[j]=0;
}
fim=meio;
}
else if((atual==1 and a==i) or (atual==0 and (a>i or a==-1))){
if(ini==fim-1){
D[fim]=i;
}
for(int j=ini;j<=meio;j++){
if(D[j]==-1)S[j]=0;
}
ini=meio+1;
}
}
S[ini]=atual;
D[ini]=i;
i++;
}
answer(S,D);
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |