/**
* author: orzvanh14
* created: 23.12.2022 10:08:02
* too lazy to update time
**/
// i wants to take ioi
//binhtinhtutinkhongcaycunhungmotkhikhongcontutinnualatuyetvong
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define nn "\n"
#define pi pair<int, int>
#define fi first
#define se second
#define lb lower_bound
#define ub upper_bound
#define eb emplace_back
#define pb push_back
#define TASK " "
#define ms(a, x) memset(a, x, sizeof(a))
#define all(a) a.begin(), a.end()
#define All(a, n) a + 1, a + 1 + n
#define LOG 19
const int INF = 1e18;
const int mod = 1e3+7;
const int N = 305;
const int maxN = 1e5 + 5;
int MOD = 998244353;
int bit[200000];
int n;
int a[N];
int dp[N][N];
void nhap(){
cin >> n;
for(int i = 1; i <= n - 1; i++){
cin >> a[i];
}
}
void solve(){
for(int i = 0; i <= n; i++){
for(int j = 0; j <= n; j++){
dp[i][j] = INF;
}
}
dp[0][1] = 0;
for(int i = 0; i < n; i++){
for(int j = 1; j <= n; j++){
if(dp[i][j] == INF) continue;
if(i + j >= n){
dp[n][j] = min(dp[n][j], dp[i][j]);
}
for(int k = i + 1; k <= min(n - 1, i + j); k++){
dp[k][j] = min(dp[k][j], dp[i][j] + 1);
if(j + 1 <= n){
dp[k][j + 1] = min(dp[k][j + 1],
dp[i][j] + a[k] + 1);
}
}
}
}
int ans = INF;
for(int j = 1; j <= n; j++){
ans = min(ans, dp[n][j]);
}
cout << ans << nn;
}
signed main(){
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
nhap();
solve();
return (0 ^ 0);
}
LyoqCgogKiAgICBhdXRob3I6ICBvcnp2YW5oMTQKCiAqICAgIGNyZWF0ZWQ6IDIzLjEyLjIwMjIgMTA6MDg6MDIKCiAqICAgIHRvbyBsYXp5IHRvIHVwZGF0ZSB0aW1lCgoqKi8KCi8vIGkgd2FudHMgdG8gdGFrZSBpb2kKCi8vYmluaHRpbmh0dXRpbmtob25nY2F5Y3VuaHVuZ21vdGtoaWtob25nY29udHV0aW5udWFsYXR1eWV0dm9uZwoKI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKI2RlZmluZSBpbnQgbG9uZyBsb25nCgojZGVmaW5lIG5uICJcbiIKCiNkZWZpbmUgcGkgcGFpcjxpbnQsIGludD4KCiNkZWZpbmUgZmkgZmlyc3QKCiNkZWZpbmUgc2Ugc2Vjb25kCgojZGVmaW5lIGxiIGxvd2VyX2JvdW5kCgojZGVmaW5lIHViIHVwcGVyX2JvdW5kCgojZGVmaW5lIGViIGVtcGxhY2VfYmFjawoKI2RlZmluZSBwYiBwdXNoX2JhY2sKCiNkZWZpbmUgVEFTSyAiICIKCiNkZWZpbmUgbXMoYSwgeCkgbWVtc2V0KGEsIHgsIHNpemVvZihhKSkKCiNkZWZpbmUgYWxsKGEpIGEuYmVnaW4oKSwgYS5lbmQoKQoKI2RlZmluZSBBbGwoYSwgbikgYSArIDEsIGEgKyAxICsgbgoKI2RlZmluZSBMT0cgMTkKCmNvbnN0IGludCBJTkYgPSAxZTE4OwoKY29uc3QgaW50IG1vZCA9IDFlMys3OwoKY29uc3QgaW50IE4gPSAzMDU7Cgpjb25zdCBpbnQgbWF4TiA9IDFlNSArIDU7CgppbnQgTU9EID0gOTk4MjQ0MzUzOwoKaW50IGJpdFsyMDAwMDBdOwoKaW50IG47CgppbnQgYVtOXTsKCmludCBkcFtOXVtOXTsKCnZvaWQgbmhhcCgpewoKCWNpbiA+PiBuOwoJZm9yKGludCBpID0gMTsgaSA8PSBuIC0gMTsgaSsrKXsKCQljaW4gPj4gYVtpXTsKCX0KCn0KCnZvaWQgc29sdmUoKXsKCglmb3IoaW50IGkgPSAwOyBpIDw9IG47IGkrKyl7CgkJZm9yKGludCBqID0gMDsgaiA8PSBuOyBqKyspewoJCQlkcFtpXVtqXSA9IElORjsKCQl9Cgl9CglkcFswXVsxXSA9IDA7Cglmb3IoaW50IGkgPSAwOyBpIDwgbjsgaSsrKXsKCQlmb3IoaW50IGogPSAxOyBqIDw9IG47IGorKyl7CgkJCWlmKGRwW2ldW2pdID09IElORikgY29udGludWU7CgkJCWlmKGkgKyBqID49IG4pewoJCQkJZHBbbl1bal0gPSBtaW4oZHBbbl1bal0sIGRwW2ldW2pdKTsKCQkJfQoJCQlmb3IoaW50IGsgPSBpICsgMTsgayA8PSBtaW4obiAtIDEsIGkgKyBqKTsgaysrKXsKCQkJCWRwW2tdW2pdID0gbWluKGRwW2tdW2pdLCBkcFtpXVtqXSArIDEpOwoJCQkJaWYoaiArIDEgPD0gbil7CgkJCQkJZHBba11baiArIDFdID0gbWluKGRwW2tdW2ogKyAxXSwKCQkJCQkJZHBbaV1bal0gKyBhW2tdICsgMSk7CgkJCQl9CgkJCX0KCQl9Cgl9CglpbnQgYW5zID0gSU5GOwoJZm9yKGludCBqID0gMTsgaiA8PSBuOyBqKyspewoJCWFucyA9IG1pbihhbnMsIGRwW25dW2pdKTsKCX0KCWNvdXQgPDwgYW5zIDw8IG5uOwoKfQoKc2lnbmVkIG1haW4oKXsKCglpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKDApOwoJY2luLnRpZSgwKTsKCWNvdXQudGllKDApOwoJbmhhcCgpOwoJc29sdmUoKTsKCXJldHVybiAoMCBeIDApOwp9Cg==