#include<bits/stdc++.h>
using namespace std;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(0);
int n;
cin>>n;
vector<int> a(n);
for(int i=0;i<n;++i) {
cin>>a[i];
}
bool ok=true;
for(int i=0;i<n;++i) {
ok&=i==0||a[i-1]<=a[i];
ok&=a[i]<=i+1;
}
cerr<<ok<<"\n";
if(!ok) {
cout<<"NEM\n";
return 0;
}
a.insert(a.begin(), 0);
int mx=*max_element(a.begin(), a.end());
vector<int> had(2*n);
vector<int> b(n+1,-1);
for(int i=1;i<=n;++i) {
if(a[i-1]!=a[i]) {
b[i]=a[i-1];
had[b[i]]=1;
}
}
int curr=0;
for(int i=1;i<=n;++i) {
if(b[i]==-1) {
while(had[curr] || curr==mx) curr++;
b[i]=curr;
had[curr]=1;
}
}
for(int i=1;i<=n;) {
int j=i;
while(j<=n && a[i]==a[j]) j++;
if(i+1<j) {
reverse(b.begin()+i+1, b.begin()+j);
}
i=j;
}
cout<<"IGEN\n";
for(int i=1;i<=n;++i) cout<<b[i]<<" ";
cout<<"\n";
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Elfogadva | 3ms | 1700 KiB | ||||
2 | Elfogadva | 3ms | 1928 KiB | ||||
subtask2 | 8/8 | ||||||
3 | Elfogadva | 3ms | 2136 KiB | ||||
4 | Elfogadva | 3ms | 2348 KiB | ||||
5 | Elfogadva | 3ms | 2572 KiB | ||||
6 | Elfogadva | 3ms | 2784 KiB | ||||
7 | Elfogadva | 3ms | 2872 KiB | ||||
8 | Elfogadva | 3ms | 2864 KiB | ||||
9 | Elfogadva | 3ms | 2996 KiB | ||||
10 | Elfogadva | 2ms | 3076 KiB | ||||
11 | Elfogadva | 3ms | 3204 KiB | ||||
subtask3 | 16/16 | ||||||
12 | Elfogadva | 3ms | 3292 KiB | ||||
13 | Elfogadva | 3ms | 3296 KiB | ||||
14 | Elfogadva | 3ms | 3292 KiB | ||||
15 | Elfogadva | 3ms | 3416 KiB | ||||
16 | Elfogadva | 2ms | 3500 KiB | ||||
subtask4 | 32/32 | ||||||
17 | Elfogadva | 4ms | 4076 KiB | ||||
18 | Elfogadva | 4ms | 3956 KiB | ||||
19 | Elfogadva | 4ms | 4032 KiB | ||||
20 | Elfogadva | 4ms | 4384 KiB | ||||
21 | Elfogadva | 4ms | 4544 KiB | ||||
22 | Elfogadva | 4ms | 4664 KiB | ||||
23 | Elfogadva | 3ms | 4308 KiB | ||||
24 | Elfogadva | 3ms | 4196 KiB | ||||
subtask5 | 44/44 | ||||||
25 | Elfogadva | 108ms | 19884 KiB | ||||
26 | Elfogadva | 109ms | 19876 KiB | ||||
27 | Elfogadva | 112ms | 20128 KiB | ||||
28 | Elfogadva | 112ms | 20168 KiB | ||||
29 | Elfogadva | 109ms | 20056 KiB | ||||
30 | Elfogadva | 109ms | 20060 KiB | ||||
31 | Elfogadva | 111ms | 20012 KiB | ||||
32 | Elfogadva | 111ms | 20012 KiB | ||||
33 | Elfogadva | 112ms | 20012 KiB | ||||
34 | Elfogadva | 112ms | 20008 KiB | ||||
35 | Elfogadva | 116ms | 20008 KiB | ||||
36 | Elfogadva | 56ms | 8332 KiB | ||||
37 | Elfogadva | 56ms | 8180 KiB |