#include <bits/stdc++.h>
using namespace std;
long long arr[100005];
long long cum[100005];
int main() {
  long long n, i, j, k;
  scanf("%lld", &n);
  for (i = 0; i < n; i++) {
    scanf("%lld", &arr[i]);
  }
  cum[0] = arr[0];
  for (i = 1; i < n; i++) {
    cum[i] = cum[i - 1] + arr[i];
  }
  string str;
  cin >> str;
  long long ans = 0;
  k = str.size();
  long long tot = 0;
  for (i = k - 1; i >= 0; i--) {
    if (str[i] == '1') {
      ans = max(ans, tot + cum[i - 1]);
      tot += arr[i];
    }
  }
  ans = max(tot, ans);
  cout << ans << endl;
  return 0;
}
