Submission #1218093

#TimeUsernameProblemLanguageResultExecution timeMemory
1218093LeonidCukGondola (IOI14_gondola)C++20
25 / 100
33 ms4680 KiB
#include <bits/stdc++.h>
#include "gondola.h"
using namespace std;
int valid(int n, int v[])
{
    map<int,int>mp;
    int k=1e9,x=-1;
    for(int i=0;i<n;i++)
    {
        if(mp[v[i]]==1)return 0;
        mp[v[i]]++;
        if(v[i]<k)
        {
            x=i;
            k=v[i];
        }
    }
    if(k>n)return 1;
    if(k==n)k=0;
    k++;
    int a=x;
    x=(x+1)%n;
    while(x!=a)
    {
        if(v[x]<=n&&v[x]!=k)return 0;
        x=(x+1)%n;
        if(k==n)k=0;
        k++;
    }
    return 1;
}
int replacement(int n, int v[], int res[])
{
    int k=1e9,x=-1;
    for(int i=0;i<n;i++)
    {
        if(v[i]<k)
        {
            x=i;
            k=v[i];
        }
    }
    if(k>n)
    {
        k=1;x=0;
    }
    if(k==n)k=0;
    k++;
    int a=x;
    x=(x+1)%n;
    vector<pair<int,int>>res1;
    while(x!=a)
    {
        if(v[x]>n)
        {
            res1.push_back({v[x],k});
        }
        x=(x+1)%n;
        if(k==n)k=0;
        k++;
    }
    sort(res1.begin(),res1.end());
    int l=0;
    for(int i=0;i<res1.size();i++)
    {
        for(int j=res1[i].second;j<res1[i].first;j++)
        {
            res[l]=j;
            l++;
        }
    }
    return l;
}
int countReplacement(int n, int inputSeq[])
{
    return 1;
}
#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...