Submission #639045

#TimeUsernameProblemLanguageResultExecution timeMemory
639045dxz05Rarest Insects (IOI22_insects)C++17
50 / 100
254 ms540 KiB
#include "insects.h" #include <bits/stdc++.h> using namespace std; int min_cardinality(int N) { vector<int> in; for (int i = 0; i < N; i++) { in.push_back(i); move_inside(i); if (press_button() >= 2) { in.pop_back(); move_outside(i); } } int diff = (int)in.size(); if (diff == 1) return N; function<bool(int)> check = [&](int x) { for (int i : in) move_outside(i); in.clear(); for (int i = 0; i < N; i++) { in.push_back(i); move_inside(i); if (press_button() > x) { in.pop_back(); move_outside(i); } } return (int)in.size() == x * diff; }; int l = 1, r = N / diff; while (l <= r){ int m = (l + r) >> 1; if (check(m)){ l = m + 1; } else { r = m - 1; } } return r; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...