Submission #402038

#TimeUsernameProblemLanguageResultExecution timeMemory
402038victoriadLibrary (JOI18_library)C++14
0 / 100
1 ms328 KiB
#include <cstdio> #include <vector> #include "library.h" using namespace std; void Solve(int N) { vector<int>res; if(N==1){ res.push_back(1); Answer(res); } else{ int primero; vector<int>l(N,1); for(int i=0;i<N;i++){ l[i]--; if(Query(l)==1){ primero=i+1; res[0]=primero; l[i]++; break; } l[i]++; } vector<bool>c(N,false); c[primero-1]=true; while(res.size()<N){ vector<int>libres; for(int i=0;i<N;i++){ if(!c[i])libres.push_back(i); } int low=0,hi=libres.size(); l.assign(N,0); while(low<=hi){ int mid=low+(hi-low)/2; for(int i=low;i<hi;i++)l[libres[i]]++; int v=Query(l); l[res[res.size()-1]]++; if(v==Query(l)){ hi=mid; } else{ low=mid+1; } } res.push_back(libres[low]+1); c[libres[low]]=true; } Answer(res); } }

Compilation message (stderr)

library.cpp: In function 'void Solve(int)':
library.cpp:32:19: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   32 |   while(res.size()<N){
      |         ~~~~~~~~~~^~
library.cpp:31:12: warning: 'primero' may be used uninitialized in this function [-Wmaybe-uninitialized]
   31 |   c[primero-1]=true;
      |     ~~~~~~~^~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...