73112024-01-06 20:34:02anonMexxcpp17Részben helyes 0/100115ms21784 KiB
#include <bits/stdc++.h>
#define FastIO ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL)
using namespace std;
typedef long long ll;
int main() {
    FastIO;
    ll i, j, rs, N;
    cin >> N;
    vector<ll> lucky(N);
    for(i = 0; i < N; i++)
        cin >> lucky[i];
    rs = -1;
    vector<ll> ans(N);
    stack<ll> free_places;
    for(i = 1; i < N; i++) {
        if(lucky[i] == lucky[i - 1])
            continue;
        for(j = 0; j < min(lucky[i] - lucky[i - 1], i - rs); j++)
            ans[i - j] = j + lucky[i - 1];
        while(j < i - rs)
            free_places.push(i - j++);
        while(j < lucky[i] - lucky[i - 1]) {
            if(free_places.empty()) {
                cout << "NEM\n";
                return 0;
            }
            ans[free_places.top()] = j++ + lucky[i - 1];
            free_places.pop();
        }
        rs = i;
    }
    cout << "IGEN\n";
    for(const auto &x : ans)
        cout << x << ' ';
    cout << '\n';
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1828 KiB
2Elfogadva3ms2048 KiB
subtask20/8
3Részben helyes3ms2176 KiB
4Részben helyes3ms2372 KiB
5Elfogadva3ms2580 KiB
6Részben helyes3ms2820 KiB
7Hibás válasz3ms3160 KiB
8Elfogadva3ms3156 KiB
9Elfogadva3ms3256 KiB
10Elfogadva3ms3240 KiB
11Hibás válasz3ms3396 KiB
subtask30/16
12Elfogadva3ms3488 KiB
13Elfogadva2ms3480 KiB
14Elfogadva3ms3484 KiB
15Elfogadva3ms3488 KiB
16Hibás válasz3ms3492 KiB
subtask40/32
17Elfogadva4ms3736 KiB
18Elfogadva4ms3768 KiB
19Elfogadva4ms3764 KiB
20Elfogadva4ms3956 KiB
21Elfogadva4ms4044 KiB
22Elfogadva4ms4044 KiB
23Elfogadva3ms4052 KiB
24Hibás válasz4ms4312 KiB
subtask50/44
25Elfogadva114ms20248 KiB
26Elfogadva114ms19916 KiB
27Elfogadva112ms19844 KiB
28Elfogadva112ms20072 KiB
29Elfogadva114ms20212 KiB
30Elfogadva114ms20244 KiB
31Elfogadva114ms20320 KiB
32Elfogadva112ms20344 KiB
33Elfogadva112ms20264 KiB
34Elfogadva112ms20216 KiB
35Elfogadva115ms20308 KiB
36Elfogadva68ms21240 KiB
37Hibás válasz112ms21784 KiB