# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
827947 | 2023-08-16T23:40:28 Z | arnold518 | Rarest Insects (IOI22_insects) | C++17 | 41 ms | 308 KB |
#include "insects.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int, int> pii; typedef pair<ll, ll> pll; const int MAXN = 2000; int A[MAXN+10], B[MAXN+10]; int min_cardinality(int N) { for(int i=0; i<N; i++) { move_inside(i); A[i]=1; if(press_button()>1) { move_outside(i); A[i]=0; } } int cnt=0; for(int i=0; i<N; i++) cnt+=A[i]; for(int i=0; i<N; i++) if(A[i]) move_outside(i); if(cnt==1) return N; if(cnt==2) { for(int i=0; i<N; i++) move_inside(i); return N-press_button(); } int lo=1, hi=N/cnt+1; int val=0; while(lo+1<hi) { int mid=lo+hi>>1, t=val; for(int i=0; i<N; i++) { if(B[i] || A[i]) continue; move_inside(i); A[i]=1; t++; if(press_button()>mid) { move_outside(i); A[i]=0; t--; } if(t==mid*cnt) break; } if(t==mid*cnt) { lo=mid; val=mid*cnt; } else { hi=mid; for(int i=0; i<N; i++) if(!B[i] && !A[i]) B[i]=1; for(int i=0; i<N; i++) if(A[i]) move_outside(i); } //printf("%d : %d\n", mid, t); if(t==mid*cnt) lo=mid; else hi=mid; } return lo; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 208 KB | Output is correct |
2 | Correct | 0 ms | 208 KB | Output is correct |
3 | Correct | 0 ms | 208 KB | Output is correct |
4 | Correct | 0 ms | 208 KB | Output is correct |
5 | Correct | 0 ms | 208 KB | Output is correct |
6 | Correct | 2 ms | 208 KB | Output is correct |
7 | Correct | 1 ms | 208 KB | Output is correct |
8 | Incorrect | 3 ms | 208 KB | Wrong answer. |
9 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 208 KB | Output is correct |
2 | Correct | 0 ms | 208 KB | Output is correct |
3 | Correct | 0 ms | 208 KB | Output is correct |
4 | Correct | 0 ms | 208 KB | Output is correct |
5 | Correct | 0 ms | 208 KB | Output is correct |
6 | Correct | 2 ms | 208 KB | Output is correct |
7 | Correct | 1 ms | 208 KB | Output is correct |
8 | Incorrect | 3 ms | 208 KB | Wrong answer. |
9 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 208 KB | Output is correct |
2 | Correct | 0 ms | 208 KB | Output is correct |
3 | Correct | 1 ms | 208 KB | Output is correct |
4 | Correct | 0 ms | 208 KB | Output is correct |
5 | Correct | 1 ms | 208 KB | Output is correct |
6 | Correct | 0 ms | 208 KB | Output is correct |
7 | Correct | 20 ms | 284 KB | Output is correct |
8 | Correct | 18 ms | 308 KB | Output is correct |
9 | Incorrect | 41 ms | 288 KB | Wrong answer. |
10 | Halted | 0 ms | 0 KB | - |