Submission #987751

#TimeUsernameProblemLanguageResultExecution timeMemory
987751AdamGSCounting Mushrooms (IOI20_mushrooms)C++17
80.71 / 100
10 ms984 KiB
#include "mushrooms.h" #include<bits/stdc++.h> using namespace std; typedef long long ll; #define rep(a, b) for(int a = 0; a < (b); ++a) #define st first #define nd second #define pb push_back #define all(a) a.begin(), a.end() int count_mushrooms(int n) { vector<int>A, B; A.pb(0); int l=1, ans=0; while(l<n) { if(A.size()>=B.size()) { int p=min(n-l, (int)A.size()); vector<int>T; rep(i, p) { T.pb(A[i]); T.pb(l); ++l; } int x=use_machine(T); if(x%2==0) A.pb(l-1); else B.pb(l-1); ans+=p-1-x/2; } else { int p=min(n-l, (int)B.size()); vector<int>T; rep(i, p) { T.pb(B[i]); T.pb(l); ++l; } int x=use_machine(T); if(x%2==0) B.pb(l-1); else A.pb(l-1); ans+=x/2; } } ans+=A.size(); return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...