Submission #728501

#TimeUsernameProblemLanguageResultExecution timeMemory
728501grogu드문 곤충 (IOI22_insects)C++17
Compilation error
0 ms0 KiB
#include "insects.h" #define dbg(x) cerr<<#x<<": "<<x<<endl #include <bits/stdc++.h> #define ll int #define pll pair<ll,ll> using namespace std; #define maxn 2005 ll n; set<ll> s; ll uniq = 0; ll F[maxn]; ll cur = 0; void add(ll i){ if(s.find(i)!=s.end()) return; move_inside(i); s.insert(i); } void del(ll i){ if(s.find(i)==s.end()){ cerr<<"out"<<endl; return; } move_outside(i); s.erase(i); } ll get(){return press_button();} void klir(){ while(s.size()) del(s.begin()); } ll f(ll x){ if(F[x]!=-1) return F[x]; if(cur>x) klir(),cur = 0; for(ll i = 0;i<n;i++){ add(i); cur = get(); if(cur>x) del(i); } return F[x] = s.size(); } ll min_cardinality(ll N) { for(ll i = 0;i<maxn;i++) F[i] = -1; n = N; uniq = f(1); //dbg(uniq); ll l = 1, r = n,mid,rez = n; while(l<=r){ mid = (l+r)/2; if(f(mid)==uniq*mid) l = mid+1,rez = mid; else r = mid-1; } return rez; } /** 6 5 8 9 5 9 9 **/

Compilation message (stderr)

insects.cpp: In function 'void klir()':
insects.cpp:29:32: error: cannot convert 'std::set<int>::iterator' {aka 'std::_Rb_tree<int, int, std::_Identity<int>, std::less<int>, std::allocator<int> >::const_iterator'} to 'int'
   29 |     while(s.size()) del(s.begin());
      |                         ~~~~~~~^~
      |                                |
      |                                std::set<int>::iterator {aka std::_Rb_tree<int, int, std::_Identity<int>, std::less<int>, std::allocator<int> >::const_iterator}
insects.cpp:19:13: note:   initializing argument 1 of 'void del(int)'
   19 | void del(ll i){
      |             ^