#include using namespace std; typedef long long ll; #define pb push_back #define fi first #define se second typedef pair P; using VP = vector

; using VVP = vector; using VI = vector; using VVI = vector; using VVVI = vector; const int inf = 1e9 + 7; const ll INF = 1LL << 61; const ll mod = 1e9 + 7; template inline bool chmax(T &a, T b) { if (a < b) { a = b; return true; } return false; } template inline bool chmin(T &a, T b) { if (a > b) { a = b; return true; } return false; } int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int i, j; int n; cin >> n; ll a[n + 1]; for (i = 1; i <= n; i++) cin >> a[i]; ll ad = 0; for (i = 1; i <= n; i++) { if (a[i] > i) { cout << "No" << endl; return 0; } } for (i = n; i >= 1; i--) { if ((a[i] + ad) % i != 0) { cout << "No" << endl; return 0; } ad += a[i]; } cout << "Yes" << endl; }