#include <iostream>
using namespace std;
int main() {
int n;
while (cin >> n) {
int seq[n], num = 1, stack[n], stacksize = 0;
for (int i = 0; i < n; ++i) {
cin >> seq[i];
stack[i] = 0;
}
for (int i = 0; i < n; ++i) {
while (stacksize == 0 || stack[stacksize - 1] < seq[i])
stack[stacksize++] = num++;
if (stack[stacksize - 1] == seq[i])
stack[stacksize--] = 0;
}
stacksize == 0 ? cout << "YES" : cout << "NO";
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkgewogICAgaW50IG47CiAgICB3aGlsZSAoY2luID4+IG4pIHsKICAgICAgICBpbnQgc2VxW25dLCBudW0gPSAxLCBzdGFja1tuXSwgc3RhY2tzaXplID0gMDsKICAgICAgICAKICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IG47ICsraSkgewogICAgICAgICAgICBjaW4gPj4gc2VxW2ldOwogICAgICAgICAgICBzdGFja1tpXSA9IDA7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgKytpKSB7CiAgICAgICAgICAgIHdoaWxlIChzdGFja3NpemUgPT0gMCB8fCBzdGFja1tzdGFja3NpemUgLSAxXSA8IHNlcVtpXSkKICAgICAgICAgICAgICAgIHN0YWNrW3N0YWNrc2l6ZSsrXSA9IG51bSsrOwogICAgICAgICAgICBpZiAoc3RhY2tbc3RhY2tzaXplIC0gMV0gPT0gc2VxW2ldKQogICAgICAgICAgICAgICAgc3RhY2tbc3RhY2tzaXplLS1dID0gMDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgc3RhY2tzaXplID09IDAgPyBjb3V0IDw8ICJZRVMiIDogY291dCA8PCAiTk8iOwogICAgfQogICAgcmV0dXJuIDA7Cn0=