fun main(args: Array<String>) {
    val n = readLine()!!.toInt()
    val a = IntArray(n, { readLine()!!.toInt() - 1 })  // 0 オリジン

    var result = 0
    var here = 0            // 0 オリジン
    val destination = 1     // 0 オリジン
    //val visited: MutableList<Int> = mutableListOf()
    val visited = -1

    while (here != destination) {
        val next = a[here]
        if (next == visited) {    // 無限ループが発生するので到達不能
            result = -1
            break
        }
        //visited.add(next)
        a[here] = visited       // 訪問済みをマーク
        here = next
        result++
    }

    println(result)
}
