Submission #430011

#TimeUsernameProblemLanguageResultExecution timeMemory
430011dreezyCounting Mushrooms (IOI20_mushrooms)C++17
0 / 100
33 ms520 KiB
#include <bits/stdc++.h> #include "mushrooms.h" using namespace std; #define pb push_back int geta(int l, int r){ if( l > r) return 0; if(l == r) return use_machine({0,l}) == 0; vector<int> inds; for(int i = l; i <=r; i++)inds.pb(i); int res = use_machine(inds); if(res == 0){ if(use_machine({0, l})== 0) return r - l + 1; else return 0; } else if(res == r -l){ if((r - l + 1)%2 == 0) return (r - l + 1)/2; else { if(use_machine({0,l}) == 0){ return (r - l + 1)/2 + 1; } else return (r - l + 1)/2; } } int mid = (l + r)/2; return geta( l, mid) + geta(mid + 1, r); } int count_mushrooms(int n) { return 1 + geta(1, n -1); }
#Verdict Execution timeMemoryGrader output
Fetching results...