제출 #1368463

#제출 시각아이디문제언어결과실행 시간메모리
1368463hahahaGift Boxes (EGOI25_giftboxes)C++20
19 / 100
73 ms8312 KiB
#include <bits/stdc++.h>
    using namespace std;
    #define int long long
    #define ff first
    #define ss second
    #define pb push_back
    const int N=5e5+7;
    int n,t;
    vector<int>a;
    int f[N];
    signed main(){
        cin>>t>>n;
        int mx=0;
        for(int i=0; i<n; i++){
            int x;
            cin>>x;
            a.pb(x);
        }
        if (n==(t+1)) {
            for(int i=0; i<n; i++) {
                if (f[a[i]]){cout<<i<<" "<<i; return 0;}
                f[a[i]]++;
            }
        }
        if (n==2*t) {
            cout<<n/2<<" "<<n-1;
            return 0;
        }
        int ansl=0, ansr=n;
       for (int tr=0; tr<=t; tr++) {
           int l=0;
           while (f[a[l]]==0&&l<tr) {
               f[a[l]]++;
               l++;
           }
           int r=n-1;
           while (f[a[r]]==0) {
               f[a[r]]++;
               r--;
           }
           for (int i=0; i<n; i++)f[i]=0;
           if ((r-l+1)<(ansr-ansl+1)) {ansl=l; ansr=r;}
       }
        cout<<ansl<<" "<<ansr;
    }
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…