#include #define For(i, a, b) for(int (i)=(a); (i)<(b); ++(i)) #define rFor(i, a, b) for(int (i)=(a)-1; (i)>=(b); --(i)) #define rep(i, n) For((i), 0, (n)) #define rrep(i, n) rFor((i), (n), 0) #define fi first #define se second using namespace std; typedef long long lint; typedef unsigned long long ulint; typedef pair pii; typedef pair pdd; typedef pair pll; typedef complex xy_t; templatebool chmax(T &a, const T &b){if(abool chmin(T &a, const T &b){if(a>b){a=b; return true;} return false;} constexpr lint mod = 1e9+7; constexpr lint INF = mod*mod; constexpr int MAX = 100010; int main(){ int n; scanf("%d", &n); lint b[n], s[n+1]; s[0]=0; rep(i, n){ scanf("%lld", &b[i]); s[i+1]=s[i]+b[i]; } lint ans=0; rep(i, n){ ans+=max(0LL, s[i]-i); ans+=max(0LL, s[n]-s[i+1]-(n-1-i)); } printf("%lld\n", ans); }