求助
查看原帖
求助
1274343
limuchudsb楼主2024/8/12 16:49
#include<bits/stdc++.h>
using namespace std;
int a[1000005],b[2017];
int main()
{
	int n,m,l=1,r=1;
    cin>>n>>m;
    for(int i=1;i<=n;i++)
    {
    	cin>>a[i];
	}
	int k=0;
	int j=0;
    for(int i=1;i<=n;i++)
    {
		k=0;
		j=0;
        while(k<m)
        {
            j++;
            if(j>n)
			{
				break;
			}
            if(b[a[j]]==0)
			{
				k++;
			}
            b[a[j]]++;
        }
        if(k==m && r-l>j-i)
		{
			l=i;
			r=j;
		}
        b[a[i]]--;
        if(b[a[i]]==0)
		{
			k--;
		}
    }
    cout<<l<<" "<<k;
    return 0;
}
2024/8/12 16:49
加载中...