//Bismillah #include using namespace std; #define nl cout< #define inf 1e17 #define MOD 1000000007 #define ai(n) array #define ac(n) array #define vi vector #define vb vector #define vc vector #define vs vector #define vpi vector> #define vvi vector> #define mp map #define pq priority_queue #define pqmin priority_queue, greater> #define pqminpair priority_queue, vector>, greater>> #define f(i,s,e) for(int i=s;i=e;i--) #define printv(vec) for(auto &value: vec) cout<>value; #define pb push_back #define pp pop_back #define all(s) s.begin(), s.end() #define sa(vec) sort(vec.begin(), vec.end()) #define sd(vec) sort(vec.begin(), vec.end(), [](int a, int b){return a>b;}) #define fastnuces ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);int t = 1; int test=0; void solve(){ int n; cin>>n; string s; cin>>s; vi arr(n); inputv(arr); int q; cin>>q; vi query(q); inputv(query); auto find = [&](int value)->int{ int l=0; int ans =0, cnt=0, sum =0; f(r, 0, n){ sum+=arr[r]; if(s[r]=='E') cnt++; while(l<=r && sum>value){ if(s[l]=='E') cnt--; sum-=arr[l++]; } ans = max(ans, cnt); } // cout<> t; while (t--) { test++; solve(); // nl } return 0; }