256102026-02-22 19:10:51999Karácsonyi égőkcpp17Accepted 100/100171ms18732 KiB
// Source: https://usaco.guide/general/io

#include <bits/stdc++.h>
using namespace std;
#define int long long

signed main() {
    int n,c;cin>>n>>c;
    vector<int> v(n);
    for(int i = 0;i<n;i++){
        cin>>v[i];
    }
    vector<int> last(c),volte(c);
    set<pair<int,int>> s;
    int volt=0,ans=n;
    for(int i = 0;i<n;i++){
        int C=v[i];
        s.erase({last[C],C});
        if(volte[C]==0){
            volt++;
            volte[C]=1;
        }
        last[C]=i;
        s.insert({last[C],C});
        if(volt==c){
            auto [ind,szin]=*s.begin();
            ans=min(ans,i-ind+1);
        }
    }
    cout<<ans<<endl;
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted1ms508 KiB
2Accepted1ms316 KiB
subtask215/15
3Accepted48ms2340 KiB
4Accepted48ms2344 KiB
5Accepted46ms2348 KiB
6Accepted1ms316 KiB
7Accepted1ms316 KiB
subtask310/10
8Accepted1ms500 KiB
9Accepted1ms316 KiB
10Accepted1ms316 KiB
11Accepted2ms316 KiB
12Accepted1ms316 KiB
subtask420/20
13Accepted1ms508 KiB
14Accepted1ms508 KiB
15Accepted1ms316 KiB
16Accepted1ms316 KiB
17Accepted1ms316 KiB
subtask525/25
18Accepted4ms820 KiB
19Accepted3ms384 KiB
20Accepted3ms316 KiB
21Accepted3ms456 KiB
22Accepted2ms552 KiB
subtask630/30
23Accepted171ms18732 KiB
24Accepted93ms2732 KiB
25Accepted112ms2864 KiB
26Accepted165ms6820 KiB
27Accepted158ms10804 KiB
28Accepted114ms2856 KiB
29Accepted94ms2804 KiB
30Accepted46ms2356 KiB