Submission #521733

#TimeUsernameProblemLanguageResultExecution timeMemory
521733A_DComparing Plants (IOI20_plants)C++14
0 / 100
1 ms460 KiB
#include "plants.h" #include <bits/stdc++.h> using namespace std; const int NN=2e5+100; int a[NN]; int nn; void init(int k,vector<int> r){ nn=r.size(); int cnt=nn; vector<int> vec; while(1){ vec.clear(); for(int i=0;i<nn;i++){ if(r[i]==0){ vec.push_back(i); } } if(vec.empty())break; reverse(vec.begin(),vec.end()); vec.push_back(vec[0]); reverse(vec.begin(),vec.end()); int j; int cn=0; for(int i=1;i<vec.size();i++){ if((vec[i]-vec[i-1]+nn)%nn>k){ j=vec[i]; cn++; } } if(cn!=1)assert(0); if(vec.size()==2)j=vec[0]; a[j]=cnt--; int h=k; while(h--){ r[j]--;j++;j%=nn; } // for(int i=0;i<nn;i++)cout<<a[i]<<" ";cout<<endl; // for(int i=0;i<nn;i++)cout<<r[i]<<" ";cout<<endl; } } int compare_plants(int x, int y){ if(a[x]<a[y])return -1; else return 1; }

Compilation message (stderr)

plants.cpp: In function 'void init(int, std::vector<int>)':
plants.cpp:26:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   26 |         for(int i=1;i<vec.size();i++){
      |                     ~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...