#include using namespace std; using int32 = int_fast32_t; using int64 = int_fast64_t; const int32 INF = 1e9; const int32 MOD = 1e9+7; const int64 LLINF = 1e18; #define YES(n) cout << ((n) ? "YES\n" : "NO\n" ) #define Yes(n) cout << ((n) ? "Yes\n" : "No\n" ) #define POSSIBLE cout << ((n) ? "POSSIBLE\n" : "IMPOSSIBLE\n" ) #define ANS(n) cout << (n) << "\n" #define REP(i,n) for(int64 i=0;i<(n);++i) #define FOR(i,a,b) for(int64 i=(a);i<(b);i++) #define FORR(i,a,b) for(int64 i=(a);i>=(b);i--) #define ALL(obj) (obj).begin(),(obj).end() #define pii pair #define pll pair #define pb(a) push_back(a) int main(){ cin.tie(0); ios::sync_with_stdio(false); int32 n,m; cin >> n >> m; vector cnt(n+2*m+10,0); int32 cur = m + 5; REP(i,n){ cin >> cnt[cur+i]; } string s; cin >> s; REP(i,m){ if(s[i] == 'L'){ cnt[cur+1] += cnt[cur]; cnt[cur] = 0; cur++; }else{ cnt[cur+n-2] += cnt[cur+n-1]; cnt[cur+n-1] = 0; cur--; } } REP(i,n){ if(i != 0)cout << " "; cout << cnt[cur+i]; } cout << endl; return 0; }