Submission #1356654

#TimeUsernameProblemLanguageResultExecution timeMemory
1356654sallyGift Boxes (EGOI25_giftboxes)C++20
44 / 100
2096 ms15964 KiB
#include<iostream>
#include<vector>
#include<set>
#include<cstring>
using namespace std;
const int mx = 5e5+5;
vector<int> team(mx);
int cnt[mx];
int T, N;
int main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    cin>>T>>N;
    for(int i=0; i<N; i++) {
        cin>>team[i];
    }
    set<int> ill;
    for(int len = 1; len<=N; len++) {
        memset(cnt, 0, sizeof(cnt));
        ill.clear();
        bool flag = false;
        for(int j = len; j<N; j++) {
            cnt[team[j]]++;
            if(cnt[team[j]]>1) {
                flag = true;
                ill.insert(team[j]);
            }
        }
        if(!flag) {cout<<0<<' '<<len-1; return 0;}
        for(int L = 1; L + len - 1 <N; L++) {
            int R = L + len - 1;
            cnt[team[L-1]]++;
            if(cnt[team[L-1]]>1) ill.insert(team[L-1]);
            cnt[team[R]]--;
            if(cnt[team[R]]<=1) ill.erase(team[R]);
            if(ill.size()<=0) {
                cout<<L<<' '<<R;
                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...