Description
Farmer John的爱牛Bessie报名参加了芭蕾舞入门课程。下周就是她的汇报表演,FJ想给Bessie搭建一个足够大的矩形舞台,这样Bessie在跳舞的时候就不会掉下来了。
把矩形的舞台看做是一个个1*1的小方格组成的网格,而Bessie的四个蹄子按照下面的方式进行描述:
FR:表示右前蹄
FL:表示左前蹄
RR:表示右后蹄
RL:表示左后蹄
开始时,Bessie面朝北,她的四个蹄子在4个相邻的小格子中形成如下的正方形:
FL FR
RL RR
Bessie的舞蹈遵循N(1≤N≤1000)条指令,指令可能是一条移动指令告诉她将一只脚移动一个单元格,或者是一条旋转指令,告诉她顺时针转90度。
移动指令是由3个字符组成的,前两个字符表示要移动的是哪个蹄,最后一个字符表示移动的方向(F=向前,B=向后,R=向右,L=向左)。
例如"FRF"表示Bessie应该把她的右前蹄向前移动一个单元格,而"RLR"表示她应该把她的左后蹄向右移动一个单元格。
移动的方向与Bessie面朝的方向是相关的。
旋转指令也是由3个字符组成的,前两个字符表示Bessie应该保持那只蹄站立然后顺时针旋转90度。最后一个字符"P"表示顺时针旋转90度。
例如"FRP"表示她的右前蹄不动顺时针旋转90度。也就是说,如果开始时Bessie面朝北,她的四个蹄的位置如下:
.. .. ..
.. .. FR
.. FL ..
.. RL RR
执行了指令"FRP"后,她的四个蹄的位置变为:
RL FL ..
RR .. FR
.. .. ..
.. .. ..
给出Bessie舞蹈表演中的N条指令,请帮忙计算出不让Bessie的脚踏出舞台所需要的矩形舞台的最小面积。
如果Bessie将一只脚踩到了另一脚上面(将一只脚移动到与另一只脚所在相同的方格内),她会绊倒且不能完成舞蹈,这种情况下输出-1.
Input
第一行,一个整数N
接下来N行,每行3个字符,描述一条指令
Output
舞蹈过程中保证Bessie的脚不会踏出舞台所需要的矩形舞台的最小面积。如果Bessie绊倒了,则输出-1
HINT
样例说明:
Bessie所需要的舞台的面积是4*4=16。她的移动过程如下:
最初状态:
. .. .. ..
.. .. .. .. (facing north)
.. .. FL FR
.. .. RL RR
指令指令"FRF"后:
.. .. .. ..
.. .. .. FR (facing north)
.. .. FL ..
.. .. RL RR
指令指令"FRP"后:
.. RL FL ..
.. RR .. FR (facing east)
.. .. .. ..
.. .. .. ..
指令指令"RLB"后:
RL .. FL ..
.. RR .. FR (facing east)
.. .. .. ..
.. .. .. ..