#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5;
namespace xianglingao {
int n;
long long a[maxn + 3];
char s[maxn + 3];
void main() {
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) {
    scanf("%lld", &a[i]);
  }
  scanf("%s", s + 1);
  long long ans = 0, x = 0, y = 0;
  bool flag = false;
  for (int i = 1; i <= n; i++) {
    if (s[i] == 'G') {
      ans += 5 * a[i];
      x += a[i];
      y += 2 * a[i];
    } else if (s[i] == 'W') {
      ans += 3 * a[i];
      x += a[i];
      flag = true;
    } else {
      ans += a[i];
      x -= a[i];
      if (x < 0) {
        ans -= x * (flag ? 3 : 5);
        x = 0;
      }
    }
    y = min(y, x);
  }
  if (x > 0) ans -= 2 * y + (x - y);
  printf("%lld\n", ans);
}
}  // namespace xianglingao
int main() {
  xianglingao::main();
  return 0;
}
