Submission #925969

#TimeUsernameProblemLanguageResultExecution timeMemory
925969andrei_boacaSuper Dango Maker (JOI22_dango3)C++17
2 / 100
1645 ms888 KiB
#include <bits/stdc++.h> #include "dango3.h" //#include "grader.cpp" using namespace std; int cul[10005]; int nn,mm; vector<int> poz; bool bad[10005]; bool have(int x,int l,int r) { bad[x]=1; for(int i=l;i<=r;i++) bad[poz[i]]=1; vector<int> v; for(int i=1;i<=nn*mm;i++) { if(!bad[i]) v.push_back(i); else bad[i]=0; } int rez=Query(v); return rez==mm-2; } bool f[10005]; void Solve(int n,int m) { nn=n; mm=m; cul[1]=1; poz.push_back(1); for(int i=2;i<=n*m;i++) { int st=0; int dr=poz.size(); dr--; int who=0; while(st<=dr) { int mij=(st+dr)/2; if(st==dr&&poz.size()==m) { who=st+1; break; } if(have(i,st,mij)) { if(st==mij) { who=st+1; break; } dr=mij; } else st=mij+1; } if(who==0) { poz.push_back(i); who=poz.size(); } cul[i]=who; } for(int z=1;z<=m;z++) { for(int i=1;i<=n;i++) f[i]=0; vector<int> v; for(int i=1;i<=n*m;i++) if(cul[i]!=0&&f[cul[i]]==0) { v.push_back(i); f[cul[i]]=1; cul[i]=0; } Answer(v); } }

Compilation message (stderr)

dango3.cpp: In function 'void Solve(int, int)':
dango3.cpp:42:34: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   42 |             if(st==dr&&poz.size()==m)
      |                        ~~~~~~~~~~^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...