Submission #1188226

#TimeUsernameProblemLanguageResultExecution timeMemory
1188226ByeWorldRarest Insects (IOI22_insects)C++20
10 / 100
67 ms444 KiB
#include "insects.h" #include <bits/stdc++.h> #define ll long long #define pb push_back #define fi first #define se second #define lf ((id<<1)) #define rg ((id<<1)|1) #define md ((l+r)>>1) using namespace std; const int MAXN = 3e5+10; const ll MOD = 1e9+2022; ll sum(ll a, ll b){ return (a+b)%MOD;} void chsum(ll &a, ll b){ a = (a+b)%MOD;} ll mul(ll a, ll b){ return (a*b)%MOD; } void chmul(ll &a, ll b){ a = (a*b)%MOD;} void chmn(auto &a, auto b){ a = min(a, b); } void chmx(auto &a, auto b){ a = max(a, b); } int n, ANS; vector<int>vec; bool ty[MAXN]; int min_cardinality(int N) { n = N; ANS = n; for(int i=0; i<n; i++) vec.pb(i); while(!vec.empty()){ for(auto in : vec) move_inside(in); int mx = press_button(); chmn(ANS, mx); for(auto in : vec) move_outside(in); for(int i=0; i<n; i++) ty[i] = 0; vector<int> idx; for(int i=0; i<vec.size(); i++){ move_inside(vec[i]); if(press_button() == mx){ ty[vec[i]] = 1; idx.pb(vec[i]); move_outside(vec[i]); // tandain ini paling kanan dr typenya } } for(auto in : vec){ if(ty[in]) continue; move_outside(in); } for(auto in : idx) move_inside(in); // penting aj for(auto in : vec){ if(ty[in]) continue; move_inside(in); if(press_button() == 2) ty[in] = 1; // max move_outside(in); } vector<int> vec2; for(auto in : vec){ if(ty[in]) continue; vec2.pb(in); } swap(vec, vec2); } return ANS; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...