Submission #1360887

#TimeUsernameProblemLanguageResultExecution timeMemory
1360887azul_safiroGift Boxes (EGOI25_giftboxes)C++20
11 / 100
26 ms12100 KiB
#include <bits/stdc++.h>
#define int long long
using namespace std;
int const M = 1e18 + 1e9 + 9;

void solve() {
    int t, n;
    cin >> t >> n;

    vector <int> smth(t, -1);
    vector <int> cnt(t, 0);
    vector <int> a(n);
    for (int i = 0; i < n; i ++) cin >> a[i];

    int f = -1;
    for (int i = n - 1; i >= 0; i --) {
        if (smth[a[i]] == -1) smth[a[i]] = i;
        else f = max(f, i);
    }

    int mx = n - 1 - f, mn = f + 1, s = 0;
    for (int i = 0; i < n; i ++) {
        if (cnt[a[i]] == 0) {
            cnt[a[i]] ++;
            f = max(f, smth[a[i]]);
            if (i + 1 > mx) mx = i + 1, s = i + 1, mn = f - s + 1;
            else if (i + 1 == mx && f - i < mn) s = i + 1, mn = f - s + 1;
        } else break;
    }

    cout << s << " " << mn + s - 1 << '\n';
    return ;
}

signed main() {
    // freopen("input.txt", "r", stdin);
    // freopen("output.txt", "w", stdout);

    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);

    int t = 1;
    // cin >> t;
    while (t --) solve();

    return 0;
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...