AT_abc465_c [ABC465C] Reverse Permutation
Description
整数 $ N $ と `o` と `x` からなる長さ $ N $ の文字列 $ S $ が与えられます。
長さ $ N $ の整数列 $ A=(A_1,A_2,\ldots,A_N) $ があります。はじめ $ A=(1,2,\ldots,N) $ です。
$ A $ に対して $ k=1,2,\ldots,N $ の順に以下の操作を行います:
- $ S_k= $ `o` である場合、 $ A $ の先頭 $ k $ 項を反転する。具体的には、 $ A $ を $ (A_k,A_{k-1},\ldots,A_1,A_{k+1},A_{k+2},\ldots,A_N) $ に置き換える。
- $ S_k= $ `x` である場合は何もしない。
全ての操作を終えた後の $ A $ を求めてください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ S $
Output Format
全ての操作を終えた後の $ A $ の各要素を空白区切りで出力せよ。
Explanation/Hint
### Sample Explanation 1
$ A $ は各操作で以下のように変化します:
- $ k=1 $ のとき: $ A $ の先頭 $ 1 $ 項を反転する。 $ A=(1,2,3,4,5) $ になる。
- $ k=2 $ のとき: $ A $ の先頭 $ 2 $ 項を反転する。 $ A=(2,1,3,4,5) $ になる。
- $ k=3 $ のとき:何もしない。
- $ k=4 $ のとき: $ A $ の先頭 $ 4 $ 項を反転する。 $ A=(4,3,1,2,5) $ になる。
- $ k=5 $ のとき: $ A $ の先頭 $ 5 $ 項を反転する。 $ A=(5,2,1,3,4) $ になる。
全ての操作を終えた後の $ A $ は $ A=(5,2,1,3,4) $ です。
### Constraints
- $ 2\le N\le 5\times 10^5 $
- $ N $ は整数
- $ S $ は `o` と `x` からなる長さ $ N $ の文字列