제출 #737791

#제출 시각아이디문제언어결과실행 시간메모리
737791DeepessonSuper Dango Maker (JOI22_dango3)C++17
22 / 100
621 ms532 KiB
#include <bits/stdc++.h> ///#include "dango3.h" void Answer(const std::vector<int> &a); int Query(const std::vector<int> &x); std::vector<int> concatena(std::vector<int> a,std::vector<int> b){ for(auto&x:b)a.push_back(x); return a; } void Solve(int N, int M) { int tot = N*M; std::vector<int> consulta; for(int i=0;i!=tot;++i)consulta.push_back(i+1); std::random_shuffle(consulta.begin(),consulta.end()); int tem=tot; bool foi[tot]={}; for(int i=0;i!=M;++i){ std::vector<int> base; int limtemp=1e9; int limbase=N; while(base.size()!=N){ int l=N-base.size(),r=std::min({5000,limtemp,tem}); while(l<r){ int m = (l+r)/2; std::vector<int> add; for(int j=0,cur=0;j<m;++cur){ if(!foi[cur]){add.push_back(consulta[cur]);++j;} } if(Query(concatena(add,base))>=1){ r=m; limtemp=r; }else {l=m+1;limbase=m;} } int puxa=-1; for(int j=0,cur=0;j<l;++cur){ if(!foi[cur]){++j;puxa=cur;} } base.push_back(consulta[puxa]); foi[puxa]=1; --tem; --limbase; } Answer(base); } }

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

dango3.cpp: In function 'void Solve(int, int)':
dango3.cpp:22:26: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   22 |         while(base.size()!=N){
      |               ~~~~~~~~~~~^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...