Submission #1193895

#TimeUsernameProblemLanguageResultExecution timeMemory
1193895dong_gasCounting Mushrooms (IOI20_mushrooms)C++20
80.71 / 100
3 ms464 KiB
#include <bits/extc++.h> using namespace std; const int MAXN = 2e4 + 24; int use_machine(vector<int> x); // 실제 위치는 몰라도 됨.. int count_mushrooms(int n) { vector<int> a = {0}, b; int acnt = 1, bcnt = 0, idx = 1; // 물어봐서 개수 더하기 while (idx < n) { vector<int> q, c = (a.size() >= b.size()) ? a : b; int qcnt = 0; for (int i = 0; i < c.size() && idx < n; i++) { q.push_back(c[i]); q.push_back(idx++); qcnt++; } // for (auto qq: q) cout << qq << ' '; // cout << endl; int query = use_machine(q); int p = query / 2; if (a.size() >= b.size()) { if (query & 1) b.push_back(idx - 1), p++; else a.push_back(idx - 1); acnt += qcnt - p, bcnt += p; } else { if (query & 1) a.push_back(idx - 1), p++; else b.push_back(idx - 1); acnt += p, bcnt += qcnt - p; } // cout << acnt << ' ' << bcnt << endl; } return acnt; }
#Verdict Execution timeMemoryGrader output
Fetching results...