Submission #829776

#TimeUsernameProblemLanguageResultExecution timeMemory
829776GusterGoose27Koala Game (APIO17_koala)C++17
19 / 100
12 ms320 KiB
#include "koala.h" #include <bits/stdc++.h> using namespace std; const int MAXN = 105; bool pres[MAXN]; int n, w; vector<int> query(vector<int> &inp) { int *a = new int[n]; int *b = new int[n]; for (int i = 0; i < n; i++) a[i] = inp[i]; playRound(a, b); vector<int> out; for (int i = 0; i < n; i++) { if (b[i] > inp[i]) out.push_back(i); } delete[] a; delete[] b; return out; } vector<int> complement(vector<int> inp) { fill(pres, pres+n, 0); for (int v: inp) pres[v] = 1; vector<int> out; for (int i = 0; i < n; i++) if (!pres[i]) out.push_back(i); return out; } vector<int> inter(vector<int> a, vector<int> &b) { fill(pres, pres+n, 0); for (int v: a) pres[v] = 1; vector<int> out; for (int v: b) if (pres[v]) out.push_back(v); return out; } int minValue(int N, int W) { n = N; w = W; vector<int> vals(n, 0); vals[0] = 1; return complement(query(vals))[0]; } int maxValue(int N, int W) { n = N; w = W; vector<int> cur(n, 0); iota(cur.begin(), cur.end(), 0); while (cur.size() > 1) { int put = n/cur.size(); vector<int> qry(n, 0); for (int v: cur) qry[v] = put; cur = inter(query(qry), cur); } return cur[0]; } int greaterValue(int N, int W) { n = N; w = W; // TODO: Implement Subtask 3 solution here. // You may leave this function unmodified if you are not attempting this // subtask. return 0; } void allValues(int N, int W, int *P) { n = N; w = W; if (W == 2*N) { // TODO: Implement Subtask 4 solution here. // You may leave this block unmodified if you are not attempting this // subtask. } else { // TODO: Implement Subtask 5 solution here. // You may leave this block unmodified if you are not attempting this // subtask. } }
#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...