#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
#include <map>
#include <queue>
#include <deque>
#include <complex>
#include <cstdio>
#define FOR(i,a,b) for(int i=(a);i<(int)(b);i++)
#define REP(i,a) FOR(i,0,a)
#define X real() 
#define Y imag()
using namespace std;
typedef long long ll;
typedef int useType;
typedef pair<useType,useType> pr;
typedef vector<useType> VI;
const int INF=1<<30;
int DP[2][2][10002];
int main(){
	int n,p;
	cin >> n;
		REP(i,2)
			REP(j,10002){
				DP[0][i][j]=INF;
				DP[1][i][j]=INF;
			}

		DP[0][0][1]=0;
		DP[0][1][0]=0;
		REP(i,n-1){
			cin >> p;
			FOR(k,1,n+1)
				DP[(i+1)&1][0][k]=min(DP[i&1][0][k-1],DP[i&1][1][k-1]+p);
			REP(k,n+1)
				DP[(i+1)&1][1][k]=min(DP[i&1][0][k]+p,DP[i&1][1][k]);
		}
		cout << min(DP[(n-1)&1][0][n/2],DP[(n-1)&1][1][n/2]) << endl;
	return 0;
}