제출 #729470

#제출 시각아이디문제언어결과실행 시간메모리
729470NeroZein동굴 (IOI13_cave)C++17
46 / 100
24 ms468 KiB
#include "cave.h"
#include <bits/stdc++.h>
using namespace std; 
 
const int N = 5005;
 
bool vis[N];
 
void exploreCave(int N_) {
  int n;
  n = N_;
  int a[n]; 
  for (int i = 0; i < n; ++i) {
    a[i] = 0; 
  } 
  int x = tryCombination(a); 
  if (x != -1) {
    for (int i = 0; i < n; ++i) {
      a[i] = rand() % 2; 
    }
    x = tryCombination(a); 
  }
  while (x != -1) {
    for (int i = 0; i < n; ++i) {
      if (vis[i]) continue; 
      a[i] ^= 1; 
      int y = tryCombination(a); 
      if (y > x || y == -1) {
        vis[i] = true; 
        x = y; 
        break;
      }
      else if (y < x) {
        vis[i] = true;
        a[i] ^= 1; 
        break;
      } else {
        a[i] ^= 1; 
      }
    }
    
  }
  int d[n];
  for (int i = 0; i < n; ++i) {
    d[i] = 0; 
  }
  for (int i = 0; i < n; ++i) {
    a[i] ^= 1; 
    x = tryCombination(a); 
    d[i] = x; 
    a[i] ^= 1; 
  }
  answer(a, 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...