#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++)
{
res[l]=res1[i].second;
l++;
if(i==0)a=n+1;
else a=res1[i-1].first+1;
for(int j=a;j<res1[i].first;j++)
{
res[l]=j;
l++;
}
}
return l;
}
int countReplacement(int n, int inputSeq[])
{
return 1;
}
# | 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... |