#include <bits/stdc++.h>
using namespace std;
using ll = long long;
template <class T> using vec = vector<T>;
template <class T> using vvec = vector<vec<T>>;
template<class T> bool chmin(T& a,T b){if(a>b) {a = b; return true;} return false;}
template<class T> bool chmax(T& a,T b){if(a<b) {a = b; return true;} return false;}
#define debug(x)  cerr << #x << " = " << (x) << endl;

int main(){
    cin.tie(0);
    ios::sync_with_stdio(false);
    int N;
    cin >> N;
    vec<ll> A(N+1);
    for(int i=1;i<=N;i++){
        cin >> A[i];
    }
    ll s = 0;
    for(int i=N;i>=1;i--){
        if(A[i]+s==0) continue;
        if((A[i]+s)%i!=0){
            cout << "No\n";
            return 0;
        }
        s += (A[i]+s)/i;
    }
    cout << "Yes\n";
}