Submission #787458

#TimeUsernameProblemLanguageResultExecution timeMemory
787458alexander707070Rarest Insects (IOI22_insects)C++17
25 / 100
248 ms540 KiB
#include<bits/stdc++.h>
#include "insects.h"
#define MAXN 2007
using namespace std;
 
int n,last,cnt,ans,pt;
vector<int> diff,s;
int l[MAXN],r[MAXN],br[MAXN];
bool used[MAXN],in[MAXN];
vector< pair<int,int> > qr;
 
bool ok(int k){
    cnt=0; s.clear();
 
    for(int i=0;i<n;i++){
        move_inside(i); cnt++;
        s.push_back(i);
 
        if(press_button()>k){
            move_outside(i); cnt--;
            s.pop_back();
        }
    }

    for(int i:s)move_outside(i);
 
    if(cnt==k*int(diff.size()))return true;
    return false;
}
 
int min_cardinality(int N){
    n=N;
 
    for(int i=0;i<n;i++){
        move_inside(i);
        diff.push_back(i);
 
        if(press_button()>1){
            move_outside(i);
            diff.pop_back();
        }
    }
 
    for(int i:diff)move_outside(i);

    ans=n/int(diff.size());

    while(true){
        if(!ok(ans)){
            ans=cnt/int(diff.size());
        }else break;
    }
    
    return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...