Submission #332049

#TimeUsernameProblemLanguageResultExecution timeMemory
332049shrek12357Cave (IOI13_cave)C++14
0 / 100
566 ms640 KiB
#include <iostream> #include <vector> #include <algorithm> #include <string> #include <map> #include <set> #include <climits> #include <cmath> #include <fstream> #include <queue> #include <stack> #include <bitset> #include "cave.h" using namespace std; #define ll long long //cin.tie(0);ios_base::sync_with_stdio(0); const int MAXN = 5005; int N; /*void exploreCave(int n) { int pos[MAXN]; int ans[MAXN]; for (int i = 0; i < n; i++) { pos[i] = 0; ans[i] = i; } int cnt = 0; while (true) { int num = tryCombination(pos); if (num == -1) { break; } cnt = num; pos[num] = (pos[num] + 1) % 2; } answer(pos, ans); }*/ /*void exploreCave(int n) { int pos[MAXN]; int ans[MAXN]; for (int i = 0; i < n; i++) { ans[i] = -1; pos[i] = 0; } for (int i = 0; i < n; i++) { pos[i] = 1; ans[i] = tryCombination(pos); pos[i] = 0; } answer(pos, ans); }*/ /*int tryCombination(int s[]) { for (int i = 0; i < N; i++) { cout << s[i] << endl; } int temp; cin >> temp; cout << endl; return temp; } void answer(int s[], int a[]) { for (int i = 0; i < N; i++) { cout << s[i] << endl; } for (int i = 0; i < N; i++) { cout << a[i] << endl; } }*/ void exploreCave(int n) { N = n; int pos[MAXN]; int ans[MAXN]; for (int i = 0; i < n; i++) { pos[i] = 0; ans[i] = -1; } for (int i = 0; i < n; i++) { int lo = 0; int hi = n - 1; int cur = tryCombination(pos); while (lo < hi) { int mid = (lo + hi) / 2; for (int j = 0; j <= mid; j++) { if (ans[j] == -1) { pos[j] = 1; } } int n1 = tryCombination(pos); if (n1 != cur) { hi = mid; } else { lo = mid + 1; } for (int j = 0; j <= mid; j++) { if (ans[j] == -1) { pos[j] = 0; } } } int a = tryCombination(pos); pos[lo] = 1; int b = tryCombination(pos); if (a != i) { pos[lo] = 0; } ans[lo] = i; } answer(pos, ans); }

Compilation message (stderr)

cave.cpp: In function 'void exploreCave(int)':
cave.cpp:108:7: warning: unused variable 'b' [-Wunused-variable]
  108 |   int b = tryCombination(pos);
      |       ^
#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...