#1330. 巧虎机器人——行走编程模式

巧虎机器人——行走编程模式

Description

以下图(a)所示的巧虎机器人有几种工作模式,其中行走编程模式具有简单的编程功能,能接收前进(F)、后退(B)、左转(L)、右转(R)四种指令,输入一系列指令,然后按下OK键,巧虎机器人就在图(b)所示的地图上从起始位置出发执行指令序列对应的动作,假定机器人最初的朝向是向北。输入地图(包含巧虎的起始位置)和指令序列,输出巧虎的最终位置和朝向。

(a) 巧虎机器人 (b) 地图

Input

第1行,为两个整数,M N(用空格隔开),2<M, N<=20,表示地图的行和列(行号和列号均从1开始计起);第2部分也占一行,为一行字符串,只包含F、B、L、R四种字符,表示巧虎机器人接收到的指令序列,长度不超过100个字符;第3部分占M行,每行有N个字符,这些字符可能为:

点号“.”,表示可通行的方格;

字符“S”,表示巧虎机器人的起始位置;(测试数据保证地图中只有一个“S”)

字符“*”,表示障碍物,不可通行。

输入文件最后一行为“0 0”,代表输入结束。

注意:1) 如果接收到的指令为'B'(后退),则往当前朝向的反方向后退一个方格,但朝向不变;2) 巧虎机器人不能出边界,也不能进入到有障碍物的方格,因此如果执行一个指令后出边界了或进入了有障碍物的方格,则这个指令无效,跳过这个指令,继续执行下一个指令。

Output

输出占一行,为两个整数及一个字符,用空格隔开,表示巧虎机器人最后所处的位置(即行号和列号)及朝向。 注意:用n, e, s, w分别表示朝北、东、南、西。

Samples

5 5

FFLRBFLLRBLLF

*...*

.*...

..S..

.*.*.

..*..
1 4 e