#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main() {
int n;cin>>n;
vector<ll>a(n);
for(int i = 0;i<n;i++){
cin>>a[i];
}
vector<vector<pair<ll,ll>>>dp(n);
dp[0].push_back({a[0],0});
//dp[0][0]=0;
for(int i = 1 ;i < n ;i++){
int sum = 0;
for(int j = i ; j >=0;j--){
int l = i-j;
sum+=a[j];
if(j==0){
dp[i].push_back({sum,l});
}else{
ll moves = 1e18;
for(auto u:dp[j-1]){
pair<ll,ll>p = u;
if(p.first<=sum){
moves = min(p.second,moves);
}
}
if(moves<1e18){
dp[i].push_back({sum,moves+l});
}
}
}
}
long long ans = 1e18;
for(auto u:dp[n-1]){
pair<ll,ll>p = u;
if(p.second<1e18){
ans = min(ans,p.second);
}
}
cout<<ans;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnVzaW5nIGxsID0gbG9uZyBsb25nOwppbnQgbWFpbigpIHsKCWludCBuO2Npbj4+bjsKCXZlY3RvcjxsbD5hKG4pOwoJZm9yKGludCBpID0gMDtpPG47aSsrKXsKCQljaW4+PmFbaV07Cgl9CgkKICAgIHZlY3Rvcjx2ZWN0b3I8cGFpcjxsbCxsbD4+PmRwKG4pOwogICAgZHBbMF0ucHVzaF9iYWNrKHthWzBdLDB9KTsKICAKICAgIC8vZHBbMF1bMF09MDsKICAgIGZvcihpbnQgaSA9IDEgO2kgPCBuIDtpKyspewogICAgCWludCBzdW0gPSAwOwogICAgCWZvcihpbnQgaiA9IGkgOyBqID49MDtqLS0pewogICAgCQlpbnQgbCA9IGktajsKICAgIAkJIHN1bSs9YVtqXTsKICAgIAkJIGlmKGo9PTApewogICAgCQkgCWRwW2ldLnB1c2hfYmFjayh7c3VtLGx9KTsKICAgIAkJIH1lbHNlewkKICAgIAkJIAlsbCBtb3ZlcyA9IDFlMTg7CiAgICAJCSBmb3IoYXV0byB1OmRwW2otMV0pewogICAgCQkgCXBhaXI8bGwsbGw+cCA9IHU7CiAgICAJCSAJCiAgICAJCSAJaWYocC5maXJzdDw9c3VtKXsKICAgIAkJIAkgIG1vdmVzID0gbWluKHAuc2Vjb25kLG1vdmVzKTsKICAgIAkJIAl9CiAgICAJCSB9CiAgICAJCSAKICAgIAkJIGlmKG1vdmVzPDFlMTgpewogICAgCQkgCWRwW2ldLnB1c2hfYmFjayh7c3VtLG1vdmVzK2x9KTsKICAgIAkJIH0KICAgIAkJIH0KICAgIAl9CiAgICB9CiAgICAKICAgIGxvbmcgbG9uZyBhbnMgPSAxZTE4OwogICAgZm9yKGF1dG8gdTpkcFtuLTFdKXsKICAgIAlwYWlyPGxsLGxsPnAgPSB1OwogICAgCWlmKHAuc2Vjb25kPDFlMTgpewogICAgCQlhbnMgPSBtaW4oYW5zLHAuc2Vjb25kKTsKICAgIAl9CiAgICB9CiAgICBjb3V0PDxhbnM7CglyZXR1cm4gMDsKfQ==