제출 #1348879

#제출 시각아이디문제언어결과실행 시간메모리
1348879argsx동굴 (IOI13_cave)C++20
51 / 100
194 ms528 KiB
#include "cave.h"
#include<bits/stdc++.h>
using namespace std;
int s[5100];
int s2[5100];
int d[5100];
int lg;
void exploreCave(int N) {
    for(int i=0;i<N;i++){
        s2[i]=-1;
    }
    lg=ceil(log2(N+1));
    for(int i=0;i<N;i++){
        int id=0;
        bool b=1;
        for(int j=0;j<N;j++){
            if(s2[j]==-1)s[j]=!b;
            else s[j]=s2[j];
        }
        if(tryCombination(s)!=i)b=!b;
        for(int k=0;k<=lg;k++){
            for(int j=0;j<N;j++){
                if(s2[j]!=-1)s[j]=s2[j];
                else{
                    if(j&(1<<k))s[j]=b;
                    else s[j]=!b;
                }
            }
            if(tryCombination(s)!=i)id|=(1<<k);
        }
        d[id]=i;
        s2[id]=b;
    }
    answer(s2,d);
    return;
}
#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...