제출 #832697

#제출 시각아이디문제언어결과실행 시간메모리
832697Username4132Rarest Insects (IOI22_insects)C++17
99.56 / 100
64 ms440 KiB
#include "insects.h" #include<iostream> #include<vector> using namespace std; #define forn(i, n) for(int i=0; i<(int)n; ++i) #define PB push_back int solve(vector<int> v, int k){ int sz = (int)v.size(); if(sz < k) return 0; int x = (sz+k)/(2*k); vector<int> us, nus; for(int el:v){ move_inside(el); int ret = press_button(); if(ret > x) move_outside(el), nus.PB(el); else us.PB(el); } for(int el:us) move_outside(el); if((int)us.size() == k*x) return x + solve(nus, k); else return solve(us, k); } int min_cardinality(int N) { vector<int> v; forn(i, N){ move_inside(i); if(press_button() > 1) move_outside(i); else v.PB(i); } int sz = (int)v.size(); for(int el:v) move_outside(el); vector<int> al(N); forn(i, N) al[i]=i; return solve(al, sz); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...