Submission #1243688

#TimeUsernameProblemLanguageResultExecution timeMemory
1243688mathias_abadieCave (IOI13_cave)C++20
0 / 100
1 ms328 KiB
#include "cave.h" #include <bits/stdc++.h> using namespace std; void exploreCave(int n) { int s[n]; // Estado actual de cada switch int d[n]; // A qué puerta está conectado cada switch int finalS[n]; // Posición correcta de cada switch bool used[n]; // Marca si el switch ya fue identificado fill(s, s + n, 0); // Todos los switches inician en 0 fill(used, used + n, false); for (int puerta = 0; puerta < n; puerta++) { int original = tryCombination(s); // Puerta actual que está cerrada for (int j = 0; j < n; j++) { if (used[j]) continue; s[j] ^= 1; // Prueba el otro estado del switch j int nuevo = tryCombination(s); s[j] ^= 1; // Revertir el cambio if (nuevo != original) { // Entonces el switch j controla la puerta 'puerta' d[j] = puerta; finalS[j] = (nuevo == puerta) ? s[j] ^ 1 : s[j]; s[j] = finalS[j]; used[j] = true; break; } } } answer(finalS, 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...