#include <bits/stdc++.h>

using namespace std;

long long a[200001];
pair<long long, long long> ppl[200001];
long long res;

int main()
{
    long long n;
    cin>>n;
    for(long long i=1; i<=n; i++)
    {
        cin>>a[i];
    }
    long long ind=-1;
    for(long long i=1; i<=n; i++)
    {
        if(a[i]>a[i-1])
        {
            ind++;
            ppl[ind].first=0;
            ppl[ind].second=a[i];
        }
        ppl[ind].first++;
    }
    long long no=0;
    //for(long long i=0; i<=ind; i++)   cout<<ppl[i].first<<' '<<ppl[i].second<<'\n';
    for(long long i=ind; i>=0; i--)
    {
        if(no>=ppl[i].second)   break;
        if(ppl[i].first>=ppl[i].second-no+1)
        {
            cout<<-2<<'\n';
            res+=(ppl[i].second-no+1)*(ppl[i].second-no+2)/2-1;
            break;
        }
        res+=ppl[i].first*(ppl[i].second-no);
        no+=ppl[i].first;
    }
    cout<<res<<'\n';
    return 0;
}
