제출 #538099

#제출 시각아이디문제언어결과실행 시간메모리
538099huangqr도서관 (JOI18_library)C++14
컴파일 에러
0 ms0 KiB
#include<bits/stdc++.h> using namespace std; typedef long long ll; void Solve(int N) { vector<int>M(N,1); vector<int>ans; vector<int>unknown; for(int i=1;i<=N;i++)unknown.push_back(i); for(int i=0;i<N;i++){//Locating an edge, letting it be L M[i]=0; if(Query(M)==1){ ans.push_back(i+1); unknown.erase(remove(unknown.begin(),unknown.end(),i+1),unknown.end()); break; } M[i]=1; } if(ans.empty())Answer(ans); while((int)ans.size()<N){ vector<int>space=unknown,a,b; while(space.size()>1){ int halfsize=space.size()/2; for(int i=0;i<halfsize;i++){ a.push_back(space[i]); } for(int i=halfsize;i<(int)space.size();i++){ b.push_back(space[i]); } //assert(a.size()&&b.size()); fill(M.begin(),M.end(),0); for(auto x:a)M[x-1]=1; int pre = Query(M); M[ans.back()-1]=1; int aft = Query(M); if(pre==aft)space=a; else space=b; a.clear(); b.clear(); } ans.push_back(*(space.begin())); unknown.erase(remove(unknown.begin(),unknown.end(),*(space.begin())),unknown.end()); } Answer(ans); }

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

library.cpp: In function 'void Solve(int)':
library.cpp:13:6: error: 'Query' was not declared in this scope
   13 |   if(Query(M)==1){
      |      ^~~~~
library.cpp:20:17: error: 'Answer' was not declared in this scope
   20 |  if(ans.empty())Answer(ans);
      |                 ^~~~~~
library.cpp:34:14: error: 'Query' was not declared in this scope
   34 |    int pre = Query(M);
      |              ^~~~~
library.cpp:45:2: error: 'Answer' was not declared in this scope
   45 |  Answer(ans);
      |  ^~~~~~