import java.util.Scanner;

public class Main {
	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		int N = sc.nextInt();
		int H[] = new int[N];

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

		loop: while (true) {
			for (int i = N - 1; i > 0; i--) {

				if (H[i] < H[i - 1]) {
					H[i - 1]--;
				}

				if (H[i] < H[i - 1]) {
					System.out.print("No");
					break loop;
				}

			}
			System.out.print("Yes");
			break;
		}

	}
} 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 H[] = new int[N];

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

		loop: while (true) {
			for (int i = N - 1; i > 0; i--) {

				if (H[i] < H[i - 1]) {
					H[i - 1]--;
				}

				if (H[i] < H[i - 1]) {
					System.out.print("No");
					break loop;
				}

			}
			System.out.print("Yes");
			break;
		}

	}
} Main public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		int N = sc.nextInt();
		int H[] = new int[N];

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

		loop: while (true) {
			for (int i = N - 1; i > 0; i--) {

				if (H[i] < H[i - 1]) {
					H[i - 1]--;
				}

				if (H[i] < H[i - 1]) {
					System.out.print("No");
					break loop;
				}

			}
			System.out.print("Yes");
			break;
		}

	} main {

		Scanner sc = new Scanner(System.in);

		int N = sc.nextInt();
		int H[] = new int[N];

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

		loop: while (true) {
			for (int i = N - 1; i > 0; i--) {

				if (H[i] < H[i - 1]) {
					H[i - 1]--;
				}

				if (H[i] < H[i - 1]) {
					System.out.print("No");
					break loop;
				}

			}
			System.out.print("Yes");
			break;
		}

	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = sc.nextInt(); N sc.nextInt() sc.nextInt sc int H[] = new int[N]; H new int[N] N for (int i = 0; i < N; i++) {
			H[i] = sc.nextInt();
		} int i = 0; int i = 0; i 0 i < N i N i++ i++ i {
			H[i] = sc.nextInt();
		} {
			H[i] = sc.nextInt();
		} H[i] = sc.nextInt() H[i] H i sc.nextInt() sc.nextInt sc String[] args args public class Main {
	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		int N = sc.nextInt();
		int H[] = new int[N];

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

		loop: while (true) {
			for (int i = N - 1; i > 0; i--) {

				if (H[i] < H[i - 1]) {
					H[i - 1]--;
				}

				if (H[i] < H[i - 1]) {
					System.out.print("No");
					break loop;
				}

			}
			System.out.print("Yes");
			break;
		}

	}
} public class Main {
	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		int N = sc.nextInt();
		int H[] = new int[N];

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

		loop: while (true) {
			for (int i = N - 1; i > 0; i--) {

				if (H[i] < H[i - 1]) {
					H[i - 1]--;
				}

				if (H[i] < H[i - 1]) {
					System.out.print("No");
					break loop;
				}

			}
			System.out.print("Yes");
			break;
		}

	}
} 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 H[] = new int[N];

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

		loop: while (true) {
			for (int i = N - 1; i > 0; i--) {

				if (H[i] < H[i - 1]) {
					H[i - 1]--;
				}

				if (H[i] < H[i - 1]) {
					System.out.print("No");
					break loop;
				}

			}
			System.out.print("Yes");
			break;
		}

	}
}
