54092023-05-13 10:34:03TomaSajtMexxcpp17Elfogadva 100/100104ms12380 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
  cin.tie(0), ios::sync_with_stdio(0);
  int n;
  cin >> n;
  vector<int> a(n);
  for (int &ai : a) cin >> ai;
  vector<int> b(n, -1);
  vector<bool> used(n + 1);

  for (int i = 0; i < n; i++) {
    int ap = i == 0 ? 0 : a[i - 1];
    if (ap > a[i] || a[i] > i + 1) {
      cout << "NEM";
      return 0;
    }
    if (ap < a[i]) {
      b[i] = a[i - 1];
      used[b[i]] = true;
    }
  }
  used[a[n - 1]] = true;  // don't use last value
  int val = 0;
  for (int i = 0; i < n; i++) {
    if (b[i] != -1) continue;
    while (used[val]) val++;
    b[i] = val;
    used[val] = true;
  }
  cout << "IGEN\n";
  for (int &bi : b) cout << bi << ' ';
  return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1692 KiB
2Elfogadva3ms1872 KiB
subtask28/8
3Elfogadva3ms1872 KiB
4Elfogadva3ms2080 KiB
5Elfogadva2ms2164 KiB
6Elfogadva3ms2292 KiB
7Elfogadva2ms2376 KiB
8Elfogadva3ms2780 KiB
9Elfogadva3ms2636 KiB
10Elfogadva2ms2632 KiB
11Elfogadva2ms2524 KiB
12Elfogadva3ms2652 KiB
subtask316/16
13Elfogadva3ms2652 KiB
14Elfogadva3ms2856 KiB
15Elfogadva3ms3060 KiB
16Elfogadva2ms3148 KiB
17Elfogadva3ms3276 KiB
18Elfogadva3ms3504 KiB
subtask432/32
19Elfogadva3ms3504 KiB
20Elfogadva4ms3908 KiB
21Elfogadva4ms3904 KiB
22Elfogadva4ms4028 KiB
23Elfogadva4ms4248 KiB
24Elfogadva4ms4200 KiB
25Elfogadva4ms4464 KiB
26Elfogadva3ms4408 KiB
27Elfogadva3ms4456 KiB
subtask544/44
28Elfogadva3ms4456 KiB
29Elfogadva101ms12216 KiB
30Elfogadva101ms12380 KiB
31Elfogadva101ms12352 KiB
32Elfogadva101ms12088 KiB
33Elfogadva101ms12092 KiB
34Elfogadva101ms12036 KiB
35Elfogadva103ms12044 KiB
36Elfogadva101ms12096 KiB
37Elfogadva104ms12096 KiB
38Elfogadva103ms12216 KiB
39Elfogadva104ms12208 KiB
40Elfogadva56ms12148 KiB
41Elfogadva57ms12064 KiB