#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e9 + 7;
const long long mod = 1e9 + 7;
int main() {
  int n, a;
  scanf("%d", &n);
  int maxx = -1;
  stack<int> s;
  while (n--) {
    scanf("%d", &a);
    if (maxx < a) maxx = a;
    if (s.empty())
      s.push(a);
    else if (s.top() < a) {
      printf("NO\n");
      return 0;
    } else if (s.top() == a)
      s.pop();
    else
      s.push(a);
  }
  if (s.empty() || s.size() == 1 && s.top() == maxx)
    printf("YES\n");
  else
    printf("NO\n");
  return 0;
}
