#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; using i64 = int64_t; using i32 = int32_t; int absi(int x) { return max(x, -x); } int main() { int n; cin >> n; vector b(n); for (int i = 0; i < n; ++i) { cin >> b[i]; } i64 ans = 0; for (int i = 0, j = 0; i < n && j < n; ) { while (i < n && b[i] > 0) ++i; while (j < n && b[j] < 2) ++j; if (i < n && j < n) { b[j]--; b[i]++; ans += absi(i - j); } } for (int i = 0; i < n; ++i) { assert(b[i] == 1); } cout << ans << endl; return 0; }