import java.util.*
 
fun main(args: Array<String>) {
  var count = readLine()!!.toInt()
  var nums = readLine()!!.split(" ").map{it -> it.toInt() }
  var descCount = 0
  var enable = true
  count = count - 1
  
  for ((index,num) in nums.withIndex()) {
    if (count-index != 0) {
      if (descCount >= 1) { // １つ前の処理で-1している
        if(nums[count-index].minus(1).minus(nums[count-index-1]) == -1) {
          descCount++
        } else if(nums[count-index].minus(1).minus(nums[count-index-1]) < -1) {
          enable = false
        } else {
          descCount = 0
        }
      } else { // していない=処理の余地がある
        if(nums[count-index].minus(nums[count-index-1]) == -1) {
          descCount++
        } else if(nums[count-index].minus(nums[count-index-1]) < -1) {
          enable = false
        } else { // する必要なし
        }
      }
    }
  }
  if (enable){
    println("Yes")
  } else {
    println("No")
  }
}