제출 #1217022

#제출 시각아이디문제언어결과실행 시간메모리
1217022lukasuliashvili동굴 (IOI13_cave)C++20
0 / 100
110 ms528 KiB
#include "cave.h"
#include <bits/stdc++.h>
using namespace std;
void exploreCave(int N) {
    int s[N],fix[N],ans[N];
    for (int i=0; i<N; i++) {
        s[i]=0;
        fix[i]=0;
        ans[i]=0;
    }
    for (int i=0; i<N; i++) {
        int l=0;
        int r=N-1;
        int last=tryCombination(s);
        if (last>=i) {
            fix[i]=1;
        }
        else {
            fix[i]=0;
        }
        while (l<=r) {
            int mid = (l+r)/2;
            for (int j=0; j<l; j++) {
                s[j]=fix[i]^1;
            }
            for (int j=l; j<=mid; j++) {
                s[j]=fix[i];
            }
            for (int j=mid+1; j<N; j++) {
                s[j]=fix[i]^1;
            }
            int last=tryCombination(s);
            if (last<=i){
                fix[i]^=1;
                l=mid+1;
            }
            else {
                if (l==r) {
                    ans[i]=l;
                }
                r=mid;
            }
        }
    }
    answer(fix,ans);
}
#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...