Submission #627790

# Submission time Handle Problem Language Result Execution time Memory
627790 2022-08-12T23:09:45 Z peti1234 Rarest Insects (IOI22_insects) C++17
Compilation error
0 ms 0 KB
#include <bits/stdc++.h>

using namespace std;
#include "insects.h"
const int c=2005;
int cnt, si;
bool v[c], fix[c];
int add(int a) {
    assert(!v[a]);
    v[a]=true;
    si++;
    move_inside(a);
    return press_button();
}
void sub(int a) {
    assert(v[a]);
    v[a]=false;
    si--;
    move_outside(a);
}
int min_cardinality(int N) {
    for (int i=0; i<N; i++) {
        if (add(i)==2) {
            sub(i);
        } else {
            cnt++;
        }
    }
    for (int i=0; i<N; i++) {
        if (v[i]) {
            fix[i]=1;
        }
    }
    int lo=1, hi=n/cnt+1, mid;
    while (hi-lo>1) {
        mid=(hi+lo)/2;
        for (int i=0; i<N; i++) {
            if (fix[i]) continue;
            if (add(i)>mid) {
                sub(i);
            }
        }
        if (si==cnt*mid) {
            lo=mid;
            for (int i=0; i<N; i++) {
                if (v[i]) {
                    fix[i]=1;
                }
            }
        } else {
            hi=mid;
            for (int i=0; i<N; i++) {
                if (fix[i]) continue;
                if (!v[i]) fix[i]=1;
                else {
                    sub(i);
                }
            }
        }
    }
    return lo;
}
/*
int main()
{
    
    return 0;
}
*/

Compilation message

insects.cpp: In function 'int min_cardinality(int)':
insects.cpp:34:18: error: 'n' was not declared in this scope
   34 |     int lo=1, hi=n/cnt+1, mid;
      |                  ^
insects.cpp:36:9: error: 'mid' was not declared in this scope
   36 |         mid=(hi+lo)/2;
      |         ^~~