Submission #809022

#TimeUsernameProblemLanguageResultExecution timeMemory
809022BT21tataRarest Insects (IOI22_insects)C++17
0 / 100
68 ms296 KiB
#include "insects.h" #include<bits/stdc++.h> using namespace std; int uni, n; bool inside[2005], never[2005]; bool check(int x) { //if(x==1) return 1; for(int i=0; i<n; i++) { if(!inside[i] and !never[i]) { move_inside(i); int cur=press_button(); if(cur>x) move_outside(i); else inside[i]=1; } } int cnt=0; for(int i=0; i<n; i++) cnt+=(inside[i]==1); if(x*uni==cnt) return 1; return 0; } int min_cardinality(int N) { n=N; for(int i=0; i<n; i++) { move_inside(i); int x=press_button(); if(x==2) move_outside(i); else uni++; } for(int i=0; i<n; i++) move_outside(i); int l=1, r=n/uni; while(l<=r) { int mid=(l+r)>>1; if(check(mid)) l=mid+1; else { r=mid-1; for(int i=0; i<n; i++) { if(!inside[i]) never[i]=1; inside[i]=0; } } } return r; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...