#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;
}