社区讨论

45求调

P1638逛画展参与者 1已保存回复 0

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
0 条
当前快照
1 份
快照标识符
@m6spj1q9
此快照首次捕获于
2025/02/06 10:17
去年
此快照最后确认于
2025/02/06 13:38
去年
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
const int N=1e6+5;
const int M=2005;
int n,m,st,ed,t,a[N],f=1,s1=0,s2=10000;
vector <int> g[M],gg[M];
int main() {
	ios::sync_with_stdio(0);
	cin.tie(0),cout.tie(0);
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	for(int f=1; f<=n; f++) {
		if(m+f<=n) {
			t=m;
			for(int i=f; i<=n; i++) {
				g[a[i]].push_back(i);
				if(g[a[i]].size()==1) {
					t--;
				}
				if(t==0) {
					ed=i;
					break;
				}
			}
			t=m;
			for(int i=ed; i>=f; i--) {
				gg[a[i]].push_back(i);
				if(gg[a[i]].size()==1) {
					t--;
				}
				if(t==0) {
					st=i;
					break;
				}
			}
		}
		if(ed-st<s2-s1) {
			s1=st,s2=ed;
		}
	}

	cout<<s1<<" "<<s2;
	return 0;
}

回复

0 条回复,欢迎继续交流。

正在加载回复...