atcoder#ABC244B. [ABC244B] Go Straight and Turn Right

[ABC244B] Go Straight and Turn Right

题目描述

xy xy 平面を考えます。x x 軸の正の向きを東向き、y y 軸の正の向きを北向きとします。
高橋君ははじめ、点 (x, y) = (0, 0) (x,\ y)\ =\ (0,\ 0) にいて東( x x 軸の正の向き)を向いています。

SR のみからなる長さ N N の文字列 T = t1t2 tN T\ =\ t_1t_2\ldots\ t_N が与えられます。 高橋君は i = 1, 2, , N i\ =\ 1,\ 2,\ \ldots,\ N の順番で下記を行います。

  • ti = t_i\ = S ならば、高橋君はいま向いている方向に距離 1 1 だけ進む。
  • ti = t_i\ = R ならば、高橋君はその場で右に 90 90 度回転する。その結果、高橋君の向いている方向が下記の通りに変わる。
    • 回転前の向きが東向き( x x 軸の正の向き)ならば、回転後の向きは南向き( y y 軸の負の向き)になる。
    • 回転前の向きが南向き( y y 軸の負の向き)ならば、回転後の向きは西向き( x x 軸の負の向き)になる。
    • 回転前の向きが西向き( x x 軸の負の向き)ならば、回転後の向きは北向き( y y 軸の正の向き)になる。
    • 回転前の向きが北向き( y y 軸の正の向き)ならば、回転後の向きは東向き( x x 軸の正の向き)になる。

上記の手順を終えた後に高橋君がいる点の座標を出力してください。

输入格式

入力は以下の形式で標準入力から与えられる。

N N T T

输出格式

問題文中の手順を終えた後に高橋君がいる点の座標 (x, y) (x,\ y) を、下記の形式にしたがって空白区切りで出力せよ。

x x y y

题目大意

在平面上,分别以正东(xx 轴)、正北(yy 轴)为正方向建立平面直角坐标系。高桥现在在这个坐标系的原点处,面东而立(也就是说他正对着 xx 轴的正方向)。

现在由输入给出一个正整数 nn 和一个长为 nn 且完全由SR构成的字符串 tt。高桥按照 i=1,2,...,ni=1,2,...,n 的顺序做如下动作(tt 的下标从 11 开始):

  • ti=t_i=S时:高桥向他的正前方走一个单位长度。
  • ti=t_i=R时:高桥原地向右转 90°90°

请在高桥完成全部移动后,输出他所在当前位置的坐标(xxyy 后,中间以单个空格隔开)。数据保证 1n1051 \le n \le 10^5

4
SSRS
2 -1
20
SRSRSSRSSSRSRRRRRSRR
0 1

提示

制約

  • 1  N  105 1\ \leq\ N\ \leq\ 10^5
  • N N は整数
  • T T SR のみからなる長さ N N の文字列

Sample Explanation 1

高橋君ははじめ (0, 0) (0,\ 0) にいて東を向いています。その後、高橋君は下記の通りに行動します。 1. t1 = t_1\ = S であるので、高橋君は東に距離 1 1 だけ進んだ (1, 0) (1,\ 0) に移動します。 2. t2 = t_2\ = S であるので、高橋君は東に距離 1 1 だけ進んだ (2, 0) (2,\ 0) に移動します。 3. t3 = t_3\ = R であるので、高橋君は右に 90 90 度回転し、高橋君は南を向きます。 4. t4 = t_4\ = S であるので、高橋君は南に距離 1 1 だけ進んだ (2, 1) (2,\ -1) に移動します。 よって、高橋君の最終的な位置である (x, y) = (2, 1) (x,\ y)\ =\ (2,\ -1) を出力します。