## Code
```cpp
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int maxn=1e5+7;
int n,a[maxn];
int f[maxn];
int c,t,cnt;
void init(int n){
f[n]=a[n]+a[1];
for(int i=n-1;i>=1;i--){
f[i]=min(f[i+1]+a[1]+a[i],a[i+1]+2*a[2]+a[1]+f[i+2]);
}
}
signed main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
if(n==1){
cout<<a[1];
return 0;
}
init(n);
cout<<f[3]+a[2];
}
```