# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
376727 | lakshith_ | Gondola (IOI14_gondola) | C++14 | Compilation error | 0 ms | 0 KiB |
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;
bool b[2500010];
int checkOnce(int n,int vec[]){
for(int i=0;i<n;i++)
if(b[vec[i]])return 0;
else b[vec[i]]=true;
return 1;
}
int valid(int n, int vec[])
{
if(!checkOnce(n,vec))return 0;
int MIN=INT_MAX,minI=0;
for(int i=0;i<n;i++)if(MIN>vec[i])MIN=vec[i],minI=i;
int p = MIN;
int pos = minI;
if(MIN>n)return 1;
for(int k=0;k<n;k++){
if(vec[pos]<=n && vec[pos]!=p)return 0;
pos++;
p++;
pos%=n;
}
return 1;
}
//----------------------
int replacement(int n, int gondolaSeq[], int replacementSeq[])
{
if(!valid(n,a))return 0;
int MIN=INT_MAX,minI=0;
for(int i=0;i<n;i++)if(MIN>a[i])MIN=a[i],minI=i;
int pos = minI;
pair<int,int> arr[n];
for(int i=0;i<n;i++)arr[i] = {a[i],i+1};
if(MIN<=n){
for(int k=0;k<n;k++){
arr[pos] = {a[pos],k+1};
pos++,pos%=n;
}
}
sort(arr,arr+n);
int i;
for(i=0;i<n;i++)if(arr[i].first>n)break;
vector<int> ans;
int prev = n+1;
for(;i<n;i++){
ans.push_back(arr[i].second);
while(prev!=arr[i].first)ans.push_back(prev++);
}
int rr[ans.size()];
for(size_t j=0;j<ans.size();j++)rr[j] = ans[j];
//for(int x:ans)cout << x << " ";
//cout << "\n";
r = rr;
return ans.size();
}
//----------------------
int countReplacement(int n, int inputSeq[])
{
return -3;
}
Compilation message (stderr)
gondola.cpp: In function 'int replacement(int, int*, int*)': gondola.cpp:36:15: error: 'a' was not declared in this scope 36 | if(!valid(n,a))return 0; | ^ gondola.cpp:38:29: error: 'a' was not declared in this scope 38 | for(int i=0;i<n;i++)if(MIN>a[i])MIN=a[i],minI=i; | ^ gondola.cpp:42:32: error: 'a' was not declared in this scope 42 | for(int i=0;i<n;i++)arr[i] = {a[i],i+1}; | ^ gondola.cpp:42:40: error: no match for 'operator=' (operand types are 'std::pair<int, int>' and '<brace-enclosed initializer list>') 42 | for(int i=0;i<n;i++)arr[i] = {a[i],i+1}; | ^ In file included from /usr/include/c++/9/bits/stl_algobase.h:64, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from gondola.cpp:2: /usr/include/c++/9/bits/stl_pair.h:378:7: note: candidate: 'std::pair<_T1, _T2>& std::pair<_T1, _T2>::operator=(typename std::conditional<std::__and_<std::is_copy_assignable<_T1>, std::is_copy_assignable<_T2> >::value, const std::pair<_T1, _T2>&, const std::__nonesuch_no_braces&>::type) [with _T1 = int; _T2 = int; typename std::conditional<std::__and_<std::is_copy_assignable<_T1>, std::is_copy_assignable<_T2> >::value, const std::pair<_T1, _T2>&, const std::__nonesuch_no_braces&>::type = const std::pair<int, int>&]' 378 | operator=(typename conditional< | ^~~~~~~~ /usr/include/c++/9/bits/stl_pair.h:381:51: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::conditional<true, const std::pair<int, int>&, const std::__nonesuch_no_braces&>::type' {aka 'const std::pair<int, int>&'} 378 | operator=(typename conditional< | ~~~~~~~~~~~~~~~~~~~~~ 379 | __and_<is_copy_assignable<_T1>, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 380 | is_copy_assignable<_T2>>::value, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 381 | const pair&, const __nonesuch_no_braces&>::type __p) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/9/bits/stl_pair.h:389:7: note: candidate: 'std::pair<_T1, _T2>& std::pair<_T1, _T2>::operator=(typename std::conditional<std::__and_<std::is_move_assignable<_Tp>, std::is_move_assignable<_T2> >::value, std::pair<_T1, _T2>&&, std::__nonesuch_no_braces&&>::type) [with _T1 = int; _T2 = int; typename std::conditional<std::__and_<std::is_move_assignable<_Tp>, std::is_move_assignable<_T2> >::value, std::pair<_T1, _T2>&&, std::__nonesuch_no_braces&&>::type = std::pair<int, int>&&]' 389 | operator=(typename conditional< | ^~~~~~~~ /usr/include/c++/9/bits/stl_pair.h:392:41: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::conditional<true, std::pair<int, int>&&, std::__nonesuch_no_braces&&>::type' {aka 'std::pair<int, int>&&'} 389 | operator=(typename conditional< | ~~~~~~~~~~~~~~~~~~~~~ 390 | __and_<is_move_assignable<_T1>, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 391 | is_move_assignable<_T2>>::value, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 392 | pair&&, __nonesuch_no_braces&&>::type __p) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/9/bits/stl_pair.h:405:2: note: candidate: 'template<class _U1, class _U2> typename std::enable_if<std::__and_<std::is_assignable<_T1&, const _U1&>, std::is_assignable<_T2&, const _U2&> >::value, std::pair<_T1, _T2>&>::type std::pair<_T1, _T2>::operator=(const std::pair<_U1, _U2>&) [with _U1 = _U1; _U2 = _U2; _T1 = int; _T2 = int]' 405 | operator=(const pair<_U1, _U2>& __p) | ^~~~~~~~ /usr/include/c++/9/bits/stl_pair.h:405:2: note: template argument deduction/substitution failed: gondola.cpp:42:40: note: couldn't deduce template parameter '_U1' 42 | for(int i=0;i<n;i++)arr[i] = {a[i],i+1}; | ^ In file included from /usr/include/c++/9/bits/stl_algobase.h:64, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from gondola.cpp:2: /usr/include/c++/9/bits/stl_pair.h:416:2: note: candidate: 'template<class _U1, class _U2> typename std::enable_if<std::__and_<std::is_assignable<_T1&, _U1&&>, std::is_assignable<_T2&, _U2&&> >::value, std::pair<_T1, _T2>&>::type std::pair<_T1, _T2>::operator=(std::pair<_U1, _U2>&&) [with _U1 = _U1; _U2 = _U2; _T1 = int; _T2 = int]' 416 | operator=(pair<_U1, _U2>&& __p) | ^~~~~~~~ /usr/include/c++/9/bits/stl_pair.h:416:2: note: template argument deduction/substitution failed: gondola.cpp:42:40: note: couldn't deduce template parameter '_U1' 42 | for(int i=0;i<n;i++)arr[i] = {a[i],i+1}; | ^ gondola.cpp:46:16: error: 'a' was not declared in this scope 46 | arr[pos] = {a[pos],k+1}; | ^ gondola.cpp:46:26: error: no match for 'operator=' (operand types are 'std::pair<int, int>' and '<brace-enclosed initializer list>') 46 | arr[pos] = {a[pos],k+1}; | ^ In file included from /usr/include/c++/9/bits/stl_algobase.h:64, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from gondola.cpp:2: /usr/include/c++/9/bits/stl_pair.h:378:7: note: candidate: 'std::pair<_T1, _T2>& std::pair<_T1, _T2>::operator=(typename std::conditional<std::__and_<std::is_copy_assignable<_T1>, std::is_copy_assignable<_T2> >::value, const std::pair<_T1, _T2>&, const std::__nonesuch_no_braces&>::type) [with _T1 = int; _T2 = int; typename std::conditional<std::__and_<std::is_copy_assignable<_T1>, std::is_copy_assignable<_T2> >::value, const std::pair<_T1, _T2>&, const std::__nonesuch_no_braces&>::type = const std::pair<int, int>&]' 378 | operator=(typename conditional< | ^~~~~~~~ /usr/include/c++/9/bits/stl_pair.h:381:51: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::conditional<true, const std::pair<int, int>&, const std::__nonesuch_no_braces&>::type' {aka 'const std::pair<int, int>&'} 378 | operator=(typename conditional< | ~~~~~~~~~~~~~~~~~~~~~ 379 | __and_<is_copy_assignable<_T1>, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 380 | is_copy_assignable<_T2>>::value, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 381 | const pair&, const __nonesuch_no_braces&>::type __p) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/9/bits/stl_pair.h:389:7: note: candidate: 'std::pair<_T1, _T2>& std::pair<_T1, _T2>::operator=(typename std::conditional<std::__and_<std::is_move_assignable<_Tp>, std::is_move_assignable<_T2> >::value, std::pair<_T1, _T2>&&, std::__nonesuch_no_braces&&>::type) [with _T1 = int; _T2 = int; typename std::conditional<std::__and_<std::is_move_assignable<_Tp>, std::is_move_assignable<_T2> >::value, std::pair<_T1, _T2>&&, std::__nonesuch_no_braces&&>::type = std::pair<int, int>&&]' 389 | operator=(typename conditional< | ^~~~~~~~ /usr/include/c++/9/bits/stl_pair.h:392:41: note: no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::conditional<true, std::pair<int, int>&&, std::__nonesuch_no_braces&&>::type' {aka 'std::pair<int, int>&&'} 389 | operator=(typename conditional< | ~~~~~~~~~~~~~~~~~~~~~ 390 | __and_<is_move_assignable<_T1>, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 391 | is_move_assignable<_T2>>::value, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 392 | pair&&, __nonesuch_no_braces&&>::type __p) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ /usr/include/c++/9/bits/stl_pair.h:405:2: note: candidate: 'template<class _U1, class _U2> typename std::enable_if<std::__and_<std::is_assignable<_T1&, const _U1&>, std::is_assignable<_T2&, const _U2&> >::value, std::pair<_T1, _T2>&>::type std::pair<_T1, _T2>::operator=(const std::pair<_U1, _U2>&) [with _U1 = _U1; _U2 = _U2; _T1 = int; _T2 = int]' 405 | operator=(const pair<_U1, _U2>& __p) | ^~~~~~~~ /usr/include/c++/9/bits/stl_pair.h:405:2: note: template argument deduction/substitution failed: gondola.cpp:46:26: note: couldn't deduce template parameter '_U1' 46 | arr[pos] = {a[pos],k+1}; | ^ In file included from /usr/include/c++/9/bits/stl_algobase.h:64, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from gondola.cpp:2: /usr/include/c++/9/bits/stl_pair.h:416:2: note: candidate: 'template<class _U1, class _U2> typename std::enable_if<std::__and_<std::is_assignable<_T1&, _U1&&>, std::is_assignable<_T2&, _U2&&> >::value, std::pair<_T1, _T2>&>::type std::pair<_T1, _T2>::operator=(std::pair<_U1, _U2>&&) [with _U1 = _U1; _U2 = _U2; _T1 = int; _T2 = int]' 416 | operator=(pair<_U1, _U2>&& __p) | ^~~~~~~~ /usr/include/c++/9/bits/stl_pair.h:416:2: note: template argument deduction/substitution failed: gondola.cpp:46:26: note: couldn't deduce template parameter '_U1' 46 | arr[pos] = {a[pos],k+1}; | ^ gondola.cpp:63:2: error: 'r' was not declared in this scope; did you mean 'rr'? 63 | r = rr; | ^ | rr