Submission #1304259

#TimeUsernameProblemLanguageResultExecution timeMemory
1304259mikasaGondola (IOI14_gondola)C++20
0 / 100
1 ms352 KiB
#include "gondola.h"
#include <vector> 
using namespace std;

int valid(int n, int inputSeq[])
{
    vector<int> v;
    vector<int> id(n+1,0);
    for (int i=0;i<n;++i) {
        int cur=inputSeq[i];
        if (cur>n) continue;
        v.push_back(cur);
        id[cur]=i+1;
    }   
    if (v.empty()) return 1;
    int cur=v.back(),ja=0;
    v.pop_back();
    while(!v.empty()) {
        int prev=v.back();
        int dist=id[prev]<id[cur]?id[cur]-id[prev]:id[cur]+n-id[prev];
        if (dist!=cur-prev){
            return 0;
        }
        if (id[prev]>id[cur]) ++ja;
        cur=prev;
        v.pop_back();
    }
    return ja<=1;
}

//----------------------

int replacement(int n, int gondolaSeq[], int replacementSeq[])
{
  return -2;
}

//----------------------

int countReplacement(int n, int inputSeq[])
{
  return -3;
}
#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...