제출 #836319

#제출 시각아이디문제언어결과실행 시간메모리
836319Trumling드문 곤충 (IOI22_insects)C++17
0 / 100
1 ms332 KiB
#include "insects.h" #include<bits/stdc++.h> using namespace std; #define F first #define S second #define all(x) x.begin(),x.end() typedef long long ll; #define pb push_back #define INF 99999999999999 int min_cardinality(int N) { ll n=N; vector<int>type(n,-1); vector<int>count(n,1); vector<int>go(n,0); ll ans=INF; set<int>s; vector<int>v; for(int i=0;i<N;i++) { move_inside(i); ll p=press_button(); if(p!=1) move_outside(i); else { type[i]=i; v.pb(i); } } for(auto x:v) move_outside(x); for(int j=0;(1<<j)<=N;j++) { for(auto x:v) { if(((1<<j)&x) && s.find(x)==s.end()) { s.insert(x); move_inside(x); } if(!((1<<j)&x) && s.find(x)!=s.end()) { s.erase(x); move_outside(x); } } for(int i=0;i<N;i++) if(type[i]==-1) { move_inside(i); ll p=press_button(); if(p!=1) go[i]+=(1<<j); move_outside(i); } } for(auto x:v) s.insert(x); for(int i=0;i<N;i++) if(s.find(i)!=s.end()) count[go[i]]++; for(int i=0;i<N;i++) if(s.find(i)!=s.end()) ans=min(ans,(ll)count[i]); return ans; }

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

insects.cpp: In function 'int min_cardinality(int)':
insects.cpp:74:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   74 |     for(int i=0;i<N;i++)
      |     ^~~
insects.cpp:78:7: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   78 |       return ans;
      |       ^~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...