#include <bits/stdc++.h>
#include "mushrooms.h"
using namespace std;
int count_mushrooms(int n)
{
vector<int> m,A,B;
bool folA;
int ans,x,k,i,pas,j,dif;
A.push_back(0);
i=1;
k=2;
while(i<n && max((int)A.size(),(int)B.size())<k)
{
if(use_machine({0,i})==0)
A.push_back(i);
else
B.push_back(i);
i++;
}
ans=A.size();
while(i<n)
{
if(A.size() >= B.size())
{
folA = true;
m = A;
}
else
{
folA = false;
m = B;
}
pas=min((int)m.size(),n-i);
vector<int> q;
for(j=0;j<pas;j++)
{
q.push_back(m[j]);
q.push_back(i+j);
}
x=use_machine(q);
dif=(x+1)/2;
if(folA==true)
{
ans+=pas-dif;
if(x % 2 == 0) A.push_back(i + pas - 1);
else B.push_back(i + pas - 1);
}
else
{
ans+=dif;
if(x % 2 == 0) B.push_back(i + pas - 1);
else A.push_back(i + pas - 1);
}
i+=pas;
}
return ans;
}