fun main(args: Array<String>) {
    val n = readLine()!!.toInt()
    val list = (1..n).map { readLine()!!.toInt() }
    val ans = solve(list)
    print(ans)
}

fun solve(nums: List<Int>): Int {
    // 無限ループ構造
    // そもそも2が存在しない
    // 2のindexに紐づく値が存在しない
    return calculate(nums, 0, 0)
}

tailrec fun calculate(list: List<Int>, n: Int, index: Int): Int {
    val a = list[index]

    return when {
        list.size == n -> {
            -1
        }
        a == 2
        -> {
            n + 1
        }
        else -> {
            calculate(list, n + 1, a - 1)
        }
    }


}

