# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
627566 | 2022-08-12T16:58:27 Z | Black_Ghost | Rarest Insects (IOI22_insects) | C++17 | 0 ms | 0 KB |
#include "insects.h" #include <vector> #include <bits/stdc++.h> #define pb push_back #define ff first #define ss second using namespace std; int min_cardinality(int N) { int n=N; int gr[3000]={}; int idx[3000]={}; int cr=1; std::vector<int> v; for(int i=0;i<n;i++){ move_inside(i); int g=press_button(); if(g==1){ idx[i]=cr; gr[cr]++; v.pb(i); cr++; continue; } else{ random_shffle(v.begin(),v.end()); for(int j=0;j<v.size();j++){ move_outside(v[j]); int res=press_button(); if(res==1){ idx[i]=idx[v[j]]; gr[idx[i]]++; v.erase(v.begin()+j); v.pb(i); break; } move_inside(v[j]); } } } int mn=n; for(int i=1;i<cr;i++){ mn=min(mn,gr[i]); } return mn; }