def solve(): N = int(input()) A = list(map(int, input().split())) if N==1: return 'Yes' end = N-1 for i in range(N-1,0,-1): if A[i]!=0: end = i break if i==1 and A[i]==0: return 'Yes' for i in range(1,end): if A[i]!=i: return 'No' if A[end]!=end+1: return 'No' return 'Yes' print(solve())