n=int(input()) r=list(map(int,input().split())) d=[-1]*(n+1) g=[[] for _ in range(n+1)] for i in range(n-1): for j in range(i+2,r[i]+1): g[i+1].append(j) from collections import deque q=deque() q.append(1) d[1]=0 while q: now=q.popleft() for to in g[now]: if to==n: print(d[now]+1) exit() if d[to]==-1: d[to]=d[now]+1 q.append(to)