106302024-04-07 00:23:09111Karácsonyi égőkcpp17Accepted 100/10030ms13492 KiB
#include<bits/stdc++.h>
using namespace std;

#define int long long

signed main(){
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	int N,M;
	cin>>N>>M;
	int ans=N;
	vector<int>v(M,-1);
	int c=0;
	deque<pair<int,int>>q;
	for(int i=0;i<N;i++){
		int x;
		cin>>x;
		if(v[x]==-1){
			c++;
		}
		v[x]=i;
		q.emplace_back(x,i);
		while(v[q.front().first]>q.front().second){
			q.pop_front();
		}
		if(c==M){
			ans=min(ans,q.back().second-q.front().second+1);
		}
	}
	cout<<ans<<'\n';
	return 0;
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted3ms1828 KiB
2Accepted3ms2020 KiB
subtask215/15
3Accepted19ms5812 KiB
4Accepted19ms5992 KiB
5Accepted19ms5800 KiB
6Accepted3ms2732 KiB
7Accepted3ms2868 KiB
subtask310/10
8Accepted2ms2740 KiB
9Accepted3ms2868 KiB
10Accepted2ms2952 KiB
11Accepted2ms2952 KiB
12Accepted3ms2980 KiB
subtask420/20
13Accepted3ms3060 KiB
14Accepted3ms3064 KiB
15Accepted3ms3068 KiB
16Accepted3ms3168 KiB
17Accepted3ms3160 KiB
subtask525/25
18Accepted3ms3540 KiB
19Accepted3ms3600 KiB
20Accepted3ms3560 KiB
21Accepted3ms3544 KiB
22Accepted3ms3908 KiB
subtask630/30
23Accepted30ms13492 KiB
24Accepted23ms9996 KiB
25Accepted26ms10292 KiB
26Accepted28ms10780 KiB
27Accepted28ms12472 KiB
28Accepted27ms10372 KiB
29Accepted21ms6148 KiB
30Accepted19ms9160 KiB