#include "insects.h"
#include<bits/stdc++.h>
#define pb push_back
#define pb push_back
using namespace std;
int n;
int cnt;
bool check(int x)
{
vector < int > g;
int put = 0;
for (int i = 0; i < n; ++ i)
{
// if(!use[i])continue;
g.pb(i);
move_inside(i);
if(press_button() > x)
{
move_outside(i);
g.pop_back();
}
else put ++;
}
for (auto x: g)
move_outside(x);
return (put == cnt * x);
}
int min_cardinality(int N)
{
n = N;
vector < int > g;
for (int i = 0; i < n; ++ i)
{
g.pb(i);
move_inside(i);
if(press_button() == 2)
{
move_outside(i);
g.pop_back();
}
}
cnt = g.size();
for (auto x: g)
move_outside(x);
int l = 0, r = n/cnt, mid, ans;
while(l <= r)
{
int mid = (l + r)/2;
if(check(mid))
{
ans = mid; l = mid + 1;
}
else r = mid - 1;
}
return ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |