| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1315209 | jahongir | 동굴 (IOI13_cave) | C++20 | 191 ms | 524 KiB |
#include "cave.h"
#include <bits/stdc++.h>
using namespace std;
void exploreCave(int N) {
int S[N], D[N];
int comb[N];
vector<int> vec(N);
iota(vec.begin(),vec.end(),0);
for(int i = 0; i < N; i++){
int open = 1;
for(auto u : vec) comb[u] = 0;
int res = tryCombination(comb);
if(res != i) open = 0;
int l = -1, r = (int) vec.size()-1;
while(l+1 < r){
int mid = (l+r)>>1;
for(int j = 0; j < (int) vec.size(); j++)
if(j <= mid) comb[vec[j]] = open^1;
else comb[vec[j]] = open;
res = tryCombination(comb);
if(res==i) r = mid;
else l = mid;
}
D[i] = vec[r];
S[D[i]] = open;
comb[D[i]] = open;
vec.erase(vec.begin()+r);
}
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... | ||||
