#ifdef ONPC #define _GLIBCXX_DEBUG #endif #include using namespace std; typedef long long ll; typedef vector vi; typedef vector> vvi; typedef vector> vpi; typedef pair pi; #define F first #define S second #define PB push_back #define MP make_pair #define popcount __builtin_popcountll #define forn(i,a,b) for (int i = a; i < b; i++) void solve(){ // cout<<"runs\n"; int n;cin>>n; vi pref(n+1); vi pref2(n+1); string s;cin>>s; forn(i,1,n+1){ pref[i]=pref[i-1]; if(s[i-1]=='E')pref[i]++; } vi end(n); forn(i,1,n+1){ cin>>end[i-1]; pref2[i]=pref2[i-1]+end[i-1]; } // cout<>q; forn(i,0,q){ int x;cin>>x; auto it=upper_bound(pref2.begin(),pref2.end(),x); int y=it-pref2.begin()-1; // cout<> t; forn(i,0,t){ solve(); } #ifdef ONPC cerr << endl << "finished in " << clock() * 1.0 / CLOCKS_PER_SEC << " sec" << endl; #endif }