#include<bits/stdc++.h>
using namespace std;
const int N=2e5+10;
int a[N],n;
map<int,int> num_to_count;
void solve(){
int l=1,r=1,max_length=1;
num_to_count[a[r]]++;
vector<pair<int,int>> res_lr;
res_lr.push_back({l,r});
while(l<=r){
r++;
if(r>n) break;
num_to_count[a[r]]++;
while(num_to_count[a[r]]>1){
num_to_count[a[l]]--;
l++;
}
if(r-l+1==max_length){
res_lr.push_back({l,r});
}else if(r-l+1>max_length){
max_length=r-l+1;
res_lr.clear();
res_lr.push_back({l,r});
}
}
cout<<res_lr.size()<<endl;
for(int i=0;i<res_lr.size();i++){
cout<<res_lr[i].first<<" "<<res_lr[i].second<<endl;
}
return;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
solve();
return 0;
}