# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
701935 | PCTprobability | Gondola (IOI14_gondola) | C++17 | 28 ms | 4556 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#include "gondola.h"
using namespace std;
using ll = long long;
int valid(int n, int inputSeq[]){
for(int i=0;i<n;i++) inputSeq[i]--;
set<int> s;
for(int i=0;i<n;i++) s.insert(inputSeq[i]);
if(s.size()!=n) return 0;
for(int i=0;i<n;i++){
if(inputSeq[i]<n){
for(int j=0;j<n;j++){
if(inputSeq[(i+j)%n]<n&&inputSeq[(i+j)%n]!=(inputSeq[i]+j)%n) return 0;
}
return 1;
}
}
return 1;
}
int replacement(int n, int gondolaSeq[], int replacementSeq[]){
for(int i=0;i<n;i++) gondolaSeq[i]--;
int m=0;
for(int i=0;i<n;i++) m=max(m,gondolaSeq[i]);
if(m==n-1){
return 0;
}
int m2=500000;
for(int i=0;i<n;i++) m2=min(m2,gondolaSeq[i]);
if(m2>=n){
vector<int> rev(500000,-1);
for(int i=0;i<n;i++) rev[gondolaSeq[i]]=i;
set<int> idx;
for(int i=0;i<n;i++){
if(gondolaSeq[i]>=n) idx.insert(i);
}
for(int i=n;i<=m;i++){
if(rev[i]==-1){
int id=(*idx.begin());
replacementSeq[i-n]=gondolaSeq[id]+1;
gondolaSeq[id]=i;
}
else{
replacementSeq[i-n]=gondolaSeq[rev[i]]+1;
idx.erase(rev[i]);
gondolaSeq[rev[i]]=i;
}
}
return m-n;
}
return 0;
}
int countReplacement(int n, int inputSeq[]){
return 0;
}
Compilation message (stderr)
# | 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... |