Submission #1152042

#TimeUsernameProblemLanguageResultExecution timeMemory
1152042alexddGondola (IOI14_gondola)C++20
25 / 100
44 ms12120 KiB
#include "gondola.h"
#include <bits/stdc++.h>
using namespace std;
int valid(int n, int inputSeq[])
{
    map<int,int> idk;
    for(int i=0;i<n;i++)
    {
        if(idk[inputSeq[i]])
            return 0;
        idk[inputSeq[i]]++;
    }
    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]-1 + j)%n + 1)
                    return 0;
            }
            return 1;
        }
    }
    return 1;
}

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

int replacement(int n, int gondolaSeq[], int replacementSeq[])
{
    for(int i=0;i<n;i++)
        gondolaSeq[i]--;
    map<int,int> ap_final,ap_now;
    for(int i=0;i<n;i++)
    {
        ap_final[gondolaSeq[i]]++;
        ap_now[i]++;
    }
    int lun=0;
    for(int i=0;i<250000;i++)
    {
        if(!ap_now[i])
            continue;
        if(ap_final[i])
            continue;
        replacementSeq[lun++] = i+1;
    }
    return lun;
}

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

int countReplacement(int n, int inputSeq[])
{
    if(!valid(n,inputSeq))
        return 0;

    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...