제출 #792995

#제출 시각아이디문제언어결과실행 시간메모리
792995vjudge1Cave (IOI13_cave)C++17
100 / 100
954 ms468 KiB
#include <iostream> #include "cave.h" using namespace std; void exploreCave(int N) { int i, j, k, c = 0, u, t; bool w, x; for (i = N - 1; i > 0; i /= 2) c++; int S[N], D[N], s[N], v[c]; for (i = 0; i < N; i++) D[i] = S[i] = -1; for (i = 0; i < N; i++) { for (j = 0; j < N; j++) { if (S[j] == -1) s[j] = 0; } u = tryCombination(s); w = (u == i); t = 1; for (k = 0; k < c; k++) { for (j = 0; j < N; j++) { if (S[j] == -1) s[j] = (j & t) / t; } u = tryCombination(s); x = (u == i); if (w == x) v[k] = 0; else v[k] = 1; t *= 2; } t = 0; for (k = c - 1; k >= 0; k--) t = 2 * t + v[k]; D[t] = i; if (w) S[t] = 1; else S[t] = 0; s[t] = S[t]; } answer(S, D); }
#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...