Submission #719957

#TimeUsernameProblemLanguageResultExecution timeMemory
719957mariowongArt Collections (BOI22_art)C++17
100 / 100
1767 ms648 KiB
#include <vector> /** * returns how many complaints you will receive for this ordering of the art collections */ int publish(std::vector<int>); /** * use this function when you have found the correct order of the art collections * You must call answer exactly once; your program will be automatically * terminated afterwards. */ void answer(std::vector<int>); /** * implement this function */ std::vector <int> v; void solve(int N){ v.clear(); for (int i=1;i<=N;i++) v.push_back(i); int l=publish(v); for (int i=2;i<=N;i++){ std::vector <int> q; q.push_back(i); for (int j=0;j<N;j++){ if (v[j] != i) q.push_back(v[j]); } int val=publish(q); int pos=-1; for (int j=i-1;j>=0;j--){ if (val == l-j+(i-1-j)) pos=i-1-j; } for (int j=i-1;j>pos;j--){ v[j]=v[j-1]; } v[pos]=i; l=val-pos; } answer(v); }

Compilation message (stderr)

interface.cpp: In function 'int publish(std::vector<int>)':
interface.cpp:20:17: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   20 |     if(v.size() != N) {
      |        ~~~~~~~~~^~~~
interface.cpp: In function 'void answer(std::vector<int>)':
interface.cpp:36:17: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   36 |     if(v.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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...