제출 #1305735

#제출 시각아이디문제언어결과실행 시간메모리
1305735Johan동굴 (IOI13_cave)C++20
13 / 100
32 ms676 KiB
#include "cave.h" #include "bits/stdc++.h" using namespace std; int f(vector < int > a){ int n = (int)a.size(); int s[n]; for(int i = 0; i < n; i++) s[i] = a[i]; return tryCombination(s); } void exploreCave(int n){ vector < int > s(n, 1); int x = f(s); bool turn = (x >= 1); set < int > st; vector < pair < int , int > > y; int k = 10; while(y.size() != n && k--){ for(int i = 0; i < n; i++){ if(st.count(i) == 0){ s[i] = turn; } } x = f(s); if(x == -1)x = n; for(int i = 0; i < n; i++){ if(st.count(i) > 0) continue; s[i] = turn ^ 1; // cout << f(s) << "---\n"; // for(auto i : s)cout << i << ' ';cout << endl; if(f(s) < x && f(s) != -1){ // cout << i << '-' << x << "->turn:" << turn << endl; y.push_back({i, f(s)}); st.insert(i); } s[i] = turn; } // cout << endl; turn ^= 1; } sort(y.begin(), y.end()); int e[n], o[n], id1 = 0, id2 = 0; for(auto [idx, va] : y)e[id1++] = va; for(auto i : s)o[id2++] = i; answer(o, e); } // C:\Users\Kazim\Downloads\Desktop\cavee // g++ cave.cpp grader.c -o main
#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...