Submission #1335683

#TimeUsernameProblemLanguageResultExecution timeMemory
1335683yhkhoo드문 곤충 (IOI22_insects)C++17
0 / 100
61 ms604 KiB
#include "insects.h"
#include <bits/stdc++.h>
using namespace std;

#define qry() press_button()
#define in(x) move_inside(x)
#define out(x) move_outside(x)
#define vi basic_string<int>

int min_cardinality(int n) {
    vi f, nf;
    for(int i=0; i<n; i++){
        in(i);
        if(qry() == 1){
            f += i;
        }
        else{
            out(i);
            nf += i;
        }
    }
    int l = 1, r = n / f.size(), m;
    vi woah;
    while(l < r){
        m = (l+r+1)/2;
        int cnt = 0;
        for(auto i: nf){
            in(i);
            cnt++;
            if(qry() > m){
                out(i);
                cnt--;
            }
            else{
                woah += i;
            }
        }
        if(cnt != (m-1) * f.size()){ // m too big
            r = m-1;
        }
        else{ // m ok
            l = m;
        }
    }
    return l;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...