import java.util.*;
import java.math.*;

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();
    }

    int count = 0;
    int max = h[0];

    for (int i = 0; i < n; i++) {
      if (max-1 > h[i]) {
        count++;
        continue;
      }
      max = Math.max(max,h[i]);
    }

    // System.out.println(count);

    if (count == 0) {
      System.out.println("Yes");
    } else {
      System.out.println("No");
    }
  }

} import java.util.*; util.* java import java.math.*; math.* java 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();
    }

    int count = 0;
    int max = h[0];

    for (int i = 0; i < n; i++) {
      if (max-1 > h[i]) {
        count++;
        continue;
      }
      max = Math.max(max,h[i]);
    }

    // System.out.println(count);

    if (count == 0) {
      System.out.println("Yes");
    } else {
      System.out.println("No");
    }
  }

} 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();
    }

    int count = 0;
    int max = h[0];

    for (int i = 0; i < n; i++) {
      if (max-1 > h[i]) {
        count++;
        continue;
      }
      max = Math.max(max,h[i]);
    }

    // System.out.println(count);

    if (count == 0) {
      System.out.println("Yes");
    } else {
      System.out.println("No");
    }
  } 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();
    }

    int count = 0;
    int max = h[0];

    for (int i = 0; i < n; i++) {
      if (max-1 > h[i]) {
        count++;
        continue;
      }
      max = Math.max(max,h[i]);
    }

    // System.out.println(count);

    if (count == 0) {
      System.out.println("Yes");
    } else {
      System.out.println("No");
    }
  } 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 int count = 0; count 0 int max = h[0]; max h[0] h 0 for (int i = 0; i < n; i++) {
      if (max-1 > h[i]) {
        count++;
        continue;
      }
      max = Math.max(max,h[i]);
    } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
      if (max-1 > h[i]) {
        count++;
        continue;
      }
      max = Math.max(max,h[i]);
    } {
      if (max-1 > h[i]) {
        count++;
        continue;
      }
      max = Math.max(max,h[i]);
    } if (max-1 > h[i]) {
        count++;
        continue;
      } max-1 > h[i] max-1 max 1 h[i] h i {
        count++;
        continue;
      } count++ count continue; max = Math.max(max,h[i]) max Math.max(max,h[i]) Math.max Math max h[i] h i if (count == 0) {
      System.out.println("Yes");
    } else {
      System.out.println("No");
    } count == 0 count 0 {
      System.out.println("Yes");
    } System.out.println("Yes") System.out.println System.out System System.out "Yes" {
      System.out.println("No");
    } System.out.println("No") System.out.println System.out System System.out "No" 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();
    }

    int count = 0;
    int max = h[0];

    for (int i = 0; i < n; i++) {
      if (max-1 > h[i]) {
        count++;
        continue;
      }
      max = Math.max(max,h[i]);
    }

    // System.out.println(count);

    if (count == 0) {
      System.out.println("Yes");
    } else {
      System.out.println("No");
    }
  }

} 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();
    }

    int count = 0;
    int max = h[0];

    for (int i = 0; i < n; i++) {
      if (max-1 > h[i]) {
        count++;
        continue;
      }
      max = Math.max(max,h[i]);
    }

    // System.out.println(count);

    if (count == 0) {
      System.out.println("Yes");
    } else {
      System.out.println("No");
    }
  }

} Main
import java.util.*;
import java.math.*;

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();
    }

    int count = 0;
    int max = h[0];

    for (int i = 0; i < n; i++) {
      if (max-1 > h[i]) {
        count++;
        continue;
      }
      max = Math.max(max,h[i]);
    }

    // System.out.println(count);

    if (count == 0) {
      System.out.println("Yes");
    } else {
      System.out.println("No");
    }
  }

}
