#include "gondola.h"
#include <map>
#include <vector>
#include <algorithm>
using namespace std;
int mod(int x, int n){
return ((x % n) + n) % n;
}
int valid(int n, int inputSeq[])
{
int mn = n + 1;
int id = -1;
map<int, int> freq;
for(int i = 0; i < n; i++){
if(inputSeq[i] <= n and inputSeq[i] < mn){
mn = inputSeq[i];
id = i;
}
freq[inputSeq[i]]++;
if(freq[inputSeq[i]] > 1){
return 0;
}
}
if(id == -1){
return 1;
}
for(int i = 0; i < n; i++){
if(inputSeq[(i + id) % n] <= n and inputSeq[(i + id) % n] != mn){
return 0;
}
mn++;
}
return 1;
}
//----------------------
int replacement(int n, int gondolaSeq[], int replacementSeq[])
{
int mn = n + 1;
int id = -1;
int not_used = n + 1;
int l = 0;
vector<pair<int, int>> v;
for(int i = 0; i < n;i++){
if(gondolaSeq[i] <= n and gondolaSeq[i] < mn){
mn = gondolaSeq[i];
id = i;
}
else if(gondolaSeq[i] > n){
v.push_back(make_pair(gondolaSeq[i], i));
}
}
sort(v.begin(), v.end());
if(id == -1){
id = 0;
}
else{
id = mod(id - mn + 1, n);
}
for(int i = 0; i < int(v.size()); i++){
replacementSeq[l] = mod(v[i].second - id, n) + 1;
l++;
while(not_used < v[i].first){
replacementSeq[l] = not_used;
not_used++;
l++;
}
not_used++;
}
return l;
}
//----------------------
int countReplacement(int n, int inputSeq[])
{
return -3;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |