Submission #1019504

#TimeUsernameProblemLanguageResultExecution timeMemory
1019504pccGondola (IOI14_gondola)C++17
55 / 100
31 ms4700 KiB
#include "gondola.h" #include <bits/stdc++.h> using namespace std; #define pii pair<int,int> #define fs first #define sc second int valid(int n, int arr[]){ int cen = -1; set<int> st; for(int i = 0;i<n;i++){ if(arr[i]<=n)cen = i; if(st.find(arr[i]) != st.end())return false; st.insert(arr[i]); } if(cen == -1)return true; int c = arr[cen]; while(cen<n){ if(arr[cen] != c&&arr[cen]<=n)return false; c++; if(c>n)c -= n; cen++; } cen = 0; while(cen<n){ if(arr[cen] != c&&arr[cen]<=n)return false; c++; if(c>n)c -= n; cen++; } return true; } //---------------------- int replacement(int n, int arr[], int ans[]){ vector<pii> v; int ori = 0; for(int i = 0;i<n;i++){ if(arr[i]>n)v.push_back(pii(arr[i],i)); else ori = i; } if(ori != -1){ int c = arr[ori]; while(ori<n){ arr[ori++] = c++; if(c>n)c -= n; } ori = 0; while(ori<n){ arr[ori++] = c++; if(c>n)c -= n; } } sort(v.begin(),v.end()); vector<int> re; int ptr = n; for(auto &i:v){ while(ptr<i.fs){ re.push_back(arr[i.sc]); arr[i.sc] = ++ptr; } } for(int i = 0;i<re.size();i++)ans[i] = re[i]; return re.size(); } //---------------------- int countReplacement(int n, int inputSeq[]) { return -3; }

Compilation message (stderr)

gondola.cpp: In function 'int replacement(int, int*, int*)':
gondola.cpp:65:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   65 |  for(int i = 0;i<re.size();i++)ans[i] = re[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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...