Submission #9003108


Source Code Expand

#include <bits/stdc++.h>
#define REP(i, n) for (int i = 0; (i) < (int)(n); ++ (i))
#define ALL(x) std::begin(x), std::end(x)
using namespace std;

string solve(int n, const vector<int> & a) {
    vector<int> b(n + 1, -1);
    REP (i, n) {
        b[a[i]] = i;
    }

    vector<int> c(n, -1);
    c[a[0]] = 0;
    REP (i, n - 1) {
        c[a[i + 1]] = c[a[i]] + (b[a[i + 1] + 1] < b[a[i] + 1]);
    }
    if (*max_element(ALL(c)) >= 26) {
        return "-1";
    }

    string s(n, '?');
    REP (i, n) {
        s[i] = c[i] + 'A';
    }
    return s;
}

int main() {
    int n; cin >> n;
    vector<int> a(n);
    REP (i, n) {
        cin >> a[i];
        -- a[i];
    }
    cout << solve(n, a) << endl;
    return 0;
}

Submission Info

Submission Time
Task D - suffix array
User kimiyuki
Language C++14 (GCC 5.4.1)
Score 100
Code Size 723 Byte
Status AC
Exec Time 327 ms
Memory 12928 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 2
AC × 34
Set Name Test Cases
Sample sample_01.txt, sample_02.txt
All sample_01.txt, sample_02.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 256 KiB
sample_02.txt AC 1 ms 256 KiB
test_01.txt AC 1 ms 256 KiB
test_02.txt AC 1 ms 256 KiB
test_03.txt AC 1 ms 256 KiB
test_04.txt AC 1 ms 256 KiB
test_05.txt AC 1 ms 256 KiB
test_06.txt AC 1 ms 256 KiB
test_07.txt AC 1 ms 256 KiB
test_08.txt AC 1 ms 256 KiB
test_09.txt AC 1 ms 256 KiB
test_10.txt AC 1 ms 256 KiB
test_11.txt AC 318 ms 12928 KiB
test_12.txt AC 319 ms 12928 KiB
test_13.txt AC 318 ms 12928 KiB
test_14.txt AC 319 ms 12928 KiB
test_15.txt AC 319 ms 12928 KiB
test_16.txt AC 327 ms 12928 KiB
test_17.txt AC 318 ms 12928 KiB
test_18.txt AC 318 ms 12928 KiB
test_19.txt AC 319 ms 12928 KiB
test_20.txt AC 310 ms 12928 KiB
test_21.txt AC 322 ms 11904 KiB
test_22.txt AC 316 ms 11904 KiB
test_23.txt AC 279 ms 10624 KiB
test_24.txt AC 260 ms 9728 KiB
test_25.txt AC 315 ms 11904 KiB
test_26.txt AC 320 ms 11904 KiB
test_27.txt AC 316 ms 11904 KiB
test_28.txt AC 1 ms 256 KiB
test_29.txt AC 1 ms 256 KiB
test_30.txt AC 1 ms 256 KiB
test_31.txt AC 1 ms 256 KiB
test_32.txt AC 1 ms 256 KiB