#include <bits/stdc++.h>
using namespace std;
int n;
int a[1000000]={},w[1000000]={};
int cz(int c,int b,int s){
if (a[b]==c){
return s;
}
if (w[b]&&b!=c){
return 10000001;
}
if (b>=1&&b<=n) w[b]++,cz(c,a[b],++s);
else{
return 10000001;
}
}
using namespace std;
int main(){
cin>>n;
for (int i=1;i<=n;i++){
cin>>a[i];
}
int minn=1000000;
for (int i=1;i<=n;i++){
int d=cz(i,i,1);
if (d<minn){
minn=d;
}
for (int j=1;j<=n;j++){
w[j]=0;
}
}
cout<<minn;
return 0;
}