#include <iostream>
using namespace std;
const int TAILLE_MAX = 500000;
int nbEquipes, tailleFile;
int vals[TAILLE_MAX];
int occ[TAILLE_MAX], occ2[TAILLE_MAX];
void lire() {
cin >> nbEquipes >> tailleFile;
for (int i = 0; i < tailleFile; i++) {
cin >> vals[i];
}
}
void coupe() {
//avance max gauche, puis droite
for (int idE = 0; idE < nbEquipes; idE++) {
occ[idE] = 0;
}
int score1 = 0, idG = 0, idD = tailleFile - 1;
while (idG < tailleFile && occ[vals[idG]] == 0) {
occ[vals[idG]] = 1;
score1++;
idG++;
}
while (idD >= 0 && occ[vals[idD]] == 0) {
occ[vals[idD]] = 1;
score1++;
idD--;
}
//avance max droite, puis gauche
for (int idE = 0; idE < nbEquipes; idE++) {
occ2[idE] = 0;
}
int score2 = 0, idG2 = 0, idD2 = tailleFile - 1;
while (idD2 >= 0 && occ[vals[idD2]] == 0) {
occ2[vals[idD2]] = 1;
score2++;
idD2--;
}
while (idG2 < tailleFile && occ[vals[idG2]] == 0) {
occ2[vals[idG2]] = 1;
score2++;
idG2++;
}
if (score2 > score1) cout << idG2 << ' ' << idD2 << '\n';
else cout << idG << ' ' << idD << '\n';
return;
}
int main() {
lire();
coupe();
return 0;
}