#include <iostream>
#include <set>
#include <cstring>
#include <algorithm>
#include <queue>
#include <cstdio>
#include <map>
#include <math.h>
const double pi=acos(-1.0);
using namespace std;
int a[100005];
int n;
int reduce(int m)
{
    int maxx=0,cnt=-1;
    for(int i=0;i<n;i++)
    {
        if(m-i<0)m+=n;
        a[m-i]-=(n-i);
        if(a[m-i]<0)return -1;
        if(a[m-i]>maxx)
        {
            maxx=a[m-i];
            cnt=m-i;
        }
    }
    if(maxx==0)return 1;
    return cnt;
}
int main()
{
    cin>>n;
    int maxx=0;
    for(int i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
        if(a[i]>a[maxx])maxx=i;
    }
    while(1)
    {
        int flag=reduce(maxx);
        if(flag==-1){cout<<"NO"<<endl;break;}
        else if(flag==1){cout<<"YES"<<endl;break;}
        else maxx=flag;

    }
    return 0;

}
