#include<bits/stdc++.h>
#define ll long long
#define int ll
#define endl '\n'
using namespace std;
const int N=2e5+500;
int a[N];
int cost[N];
int get(int l,int r){
    if(r<l){
        return 0;
    }
    if(l==r){
        return cost[l];
    }
    int mx=-1;
    int pos=-1;
    for(int z=l;z<=r;z++){
        if(mx<a[z]){
            mx=a[z];
            pos=z;
        }
    }
    if(pos==l or pos==r){
        return cost[pos];
    }
    return cost[pos]+min(get(l,pos-1),get(pos+1,r));
}
void solve(){
    int n;
    cin>>n;
    for(int z=1;z<=n;z++){
        cin>>a[z];
    }
    for(int z=1;z<=n;z++){
        cin>>cost[z];
    }
    cout<<get(1,n);
}
main(){
    int t=1;
    //cin>>t;
    while(t--){
        solve();
    }
}
