#include<bits/stdc++.h>
using namespace std;
#define fast ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#define dbg(a,b,c,d) cerr<<a<<" "<<b<<" "<<c<<" "<<d<<endl;
#define kill(a) {cout<<a<<endl;continue;}
#define KILL(a) {cout<<a<<endl;return 0;}
#define debug cerr<<"Error Found"<<endl;
#define mem(a,b) memset(a,b,sizeof(a))
#define lcm(a, b) (a/__gcd(a,b))*b
#define w(t) cin>>t;while(t--)
#define pi 2 * acos(0.0)
#define endl "\n"
int t, cs = 0;
const int mxn = 2e5 + 3, mod = 1e9 + 7;
int32_t main()
{
//fast
int n;
cin >> n;
string s;
cin >> s;
int R[n + 1], C[n + 1];
for(int i = 1; i <= n; i++)cin >> R[i];
for(int i = 1; i <= n; i++)cin >> C[i];
int state[n + 5] = {};
int64_t cost = 0;
for(int i = 1; i <= n; i++)
{
state[i] += state[i - 1];
if(s[i - 1] == '1')
{
if(state[i] % 2)continue;
cost += C[i], state[i]++, state[R[i] + 1]--;
}
else
{
if(state[i] % 2 == 0)continue;
cost += C[i], state[i]++, state[R[i] + 1]--;
}
}
cout << cost << endl;
}