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 "gondola.h"
#include <bits/stdc++.h>
using namespace std ;
typedef pair<int,int> pii ;
int valid(int n, int inputSeq[])
{
int x = min_element ( inputSeq, inputSeq+n ) - inputSeq ;
vector <int> nwSeq ;
set <int> rep ;
for ( int i = x ; i < n ; ++i ) nwSeq.push_back ( inputSeq[i] ), rep.insert ( inputSeq[i] ) ;
for ( int i = 0 ; i < x ; ++i ) nwSeq.push_back ( inputSeq[i] ), rep.insert ( inputSeq[i] ) ;
int expected = inputSeq[x] ;
int posible = ( rep.size()==n ) ;
for ( int i = 0 ; i < n ; ++i ) {
if ( nwSeq[i] <= n ) {
if ( nwSeq[i] != expected ) posible = 0 ;
expected = nwSeq[i]+1 ;
}
else expected++ ;
}
return posible;
}
//----------------------
int replacement(int n, int gondolaSeq[], int replacementSeq[])
{
int x = min_element ( gondolaSeq, gondolaSeq+n ) - gondolaSeq ;
int beg = 1 ;
if ( gondolaSeq[x] <= n ) beg = gondolaSeq[x] ;
vector <int> nwSeq ;
for ( int i = x ; i < n ; ++i ) nwSeq.push_back ( gondolaSeq[i] ) ;
for ( int i = 0 ; i < x ; ++i ) nwSeq.push_back ( gondolaSeq[i] ) ;
// cout << beg << '\n' ;
vector <pii> posib ;
for ( int i = 0 ; i < n ; ++i ) {
if ( nwSeq[i] != beg ) posib.push_back ( {nwSeq[i], beg} ) ;
beg++ ;
if ( beg > n ) beg = 1;
}
sort ( posib.begin(), posib.end() ) ;
int ans = 0, id = 0;
for ( auto i:posib ) {
// cout << i.first << ' ' << i.second << '\n' ;
replacementSeq[id] = i.second ;
n++ ;
++ans ;
while ( n < i.first ) {
++id ;
replacementSeq[id] = n ;
++n ;
++ans ;
}
++id ;
}
return ans;
}
//----------------------
int countReplacement(int n, int inputSeq[])
{
return -3;
}
Compilation message (stderr)
gondola.cpp: In function 'int valid(int, int*)':
gondola.cpp:15:29: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
int posible = ( rep.size()==n ) ;
~~~~~~~~~~^~~
# | 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... |