#include <bits/stdc++.h>
using namespace std;
const int N = 1e6+5;
int n,m;
typedef pair<int,int> PII;
PII ans;
int a[N]; //a数组储存n幅画它的画家序号序列;
int cnt[2005]; //记录队列遍历a数组时候每个画家出现了多少次
int hh=1,tt=0; //队列头,队列尾
int main ()
{
cin.tie(0);
ios::sync_with_stdio(false);
cin>>n>>m;
int k=0; //K记录队列中有多少个新遇见的画家
ans={1,1e6};//初始化答案为最大的
for (int i=1;i<=n;i++) cin>>a[i];
for (int i=1;i<=n;i++)
{
while (hh<=tt&&cnt[a[hh]]>1) cnt[a[hh]]--,hh++; //队列头的画家出现过,计数减一,队列头后移
if (hh<=tt&&k==m) if (tt-hh<ans.second-ans.first) ans={hh,tt}; //一旦发现符合题意(画家全部出现过)的队列,答案更新为更短的队列左端和右端
tt=i; //每轮队列尾后移
cnt[a[tt]]++; //队列尾后移计数加一
if (cnt[a[tt]]==1) k++; //一旦队列尾出现的画家是新遇见的,K加一
}
cout<<ans.first<<' '<<ans.second;
return 0;
}