제출 #932535

#제출 시각아이디문제언어결과실행 시간메모리
932535velislavgarkovRarest Insects (IOI22_insects)C++17
0 / 100
1 ms596 KiB
#include "insects.h" #include <iostream> #include <vector> using namespace std; const int MAXN=1e4; bool used[MAXN]; vector <int> last, removed; int n, ss, d; bool check(int x) { for (int i=0;i<n;i++) { if (used[i]) continue; move_inside(i); if (press_button()>x) { move_outside(i); removed.push_back(i); } else last.push_back(i); } if (ss+last.size()==d*x) return true; return false; } int min_cardinality(int N) { n=N; d=0; for (int i=0;i<n;i++) { move_inside(i); if (press_button()>1) move_outside(i); else { used[i]=true; d++; } } ss=d; int l, r, mid; l=1; r=n/d+1; while (l<r-1) { mid=(l+r)/2; if (check(mid)) { l=mid; ss+=last.size(); for (auto i:last) used[i]=true; } else { r=mid-1; for (auto i:removed) used[i]=true; } } if (check(r)) return r; return l; }

컴파일 시 표준 에러 (stderr) 메시지

insects.cpp: In function 'bool check(int)':
insects.cpp:18:23: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   18 |     if (ss+last.size()==d*x) return true;
      |         ~~~~~~~~~~~~~~^~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...