import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int n = sc.nextInt();
        int[] a = new int[n];

        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
        }

        boolean[] isPush = new boolean[n];
        int cnt = 0;
        int botten = 1;
        while (botten != 2) {
            if (isPush[botten-1]) {
                cnt = -1;
                break;
            }
            isPush[botten-1] = true;
            botten = a[botten-1];
            cnt++;
        }
        
        System.out.println(cnt);
    }
} import java.util.Scanner; Scanner java.util public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int n = sc.nextInt();
        int[] a = new int[n];

        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
        }

        boolean[] isPush = new boolean[n];
        int cnt = 0;
        int botten = 1;
        while (botten != 2) {
            if (isPush[botten-1]) {
                cnt = -1;
                break;
            }
            isPush[botten-1] = true;
            botten = a[botten-1];
            cnt++;
        }
        
        System.out.println(cnt);
    }
} Main public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int n = sc.nextInt();
        int[] a = new int[n];

        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
        }

        boolean[] isPush = new boolean[n];
        int cnt = 0;
        int botten = 1;
        while (botten != 2) {
            if (isPush[botten-1]) {
                cnt = -1;
                break;
            }
            isPush[botten-1] = true;
            botten = a[botten-1];
            cnt++;
        }
        
        System.out.println(cnt);
    } main {
        Scanner sc = new Scanner(System.in);

        int n = sc.nextInt();
        int[] a = new int[n];

        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
        }

        boolean[] isPush = new boolean[n];
        int cnt = 0;
        int botten = 1;
        while (botten != 2) {
            if (isPush[botten-1]) {
                cnt = -1;
                break;
            }
            isPush[botten-1] = true;
            botten = a[botten-1];
            cnt++;
        }
        
        System.out.println(cnt);
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n = sc.nextInt(); n sc.nextInt() sc.nextInt sc int[] a = new int[n]; a new int[n] n for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
        } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
            a[i] = sc.nextInt();
        } {
            a[i] = sc.nextInt();
        } a[i] = sc.nextInt() a[i] a i sc.nextInt() sc.nextInt sc boolean[] isPush = new boolean[n]; isPush new boolean[n] n int cnt = 0; cnt 0 int botten = 1; botten 1 while (botten != 2) {
            if (isPush[botten-1]) {
                cnt = -1;
                break;
            }
            isPush[botten-1] = true;
            botten = a[botten-1];
            cnt++;
        } botten != 2 botten 2 {
            if (isPush[botten-1]) {
                cnt = -1;
                break;
            }
            isPush[botten-1] = true;
            botten = a[botten-1];
            cnt++;
        } if (isPush[botten-1]) {
                cnt = -1;
                break;
            } isPush[botten-1] isPush botten-1 botten 1 {
                cnt = -1;
                break;
            } cnt = -1 cnt -1 1 break; isPush[botten-1] = true isPush[botten-1] isPush botten-1 botten 1 true botten = a[botten-1] botten a[botten-1] a botten-1 botten 1 cnt++ cnt System.out.println(cnt) System.out.println System.out System System.out cnt String[] args args public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int n = sc.nextInt();
        int[] a = new int[n];

        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
        }

        boolean[] isPush = new boolean[n];
        int cnt = 0;
        int botten = 1;
        while (botten != 2) {
            if (isPush[botten-1]) {
                cnt = -1;
                break;
            }
            isPush[botten-1] = true;
            botten = a[botten-1];
            cnt++;
        }
        
        System.out.println(cnt);
    }
} public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int n = sc.nextInt();
        int[] a = new int[n];

        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
        }

        boolean[] isPush = new boolean[n];
        int cnt = 0;
        int botten = 1;
        while (botten != 2) {
            if (isPush[botten-1]) {
                cnt = -1;
                break;
            }
            isPush[botten-1] = true;
            botten = a[botten-1];
            cnt++;
        }
        
        System.out.println(cnt);
    }
} Main
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int n = sc.nextInt();
        int[] a = new int[n];

        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
        }

        boolean[] isPush = new boolean[n];
        int cnt = 0;
        int botten = 1;
        while (botten != 2) {
            if (isPush[botten-1]) {
                cnt = -1;
                break;
            }
            isPush[botten-1] = true;
            botten = a[botten-1];
            cnt++;
        }
        
        System.out.println(cnt);
    }
}
