Awa开小车
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

Awa正在玩一款名叫明日方舟的游戏。
这款游戏在一个高度为n,宽度为m的网格上进行,玩家可以部署干员在格子上来击败敌人。

在这个问题中,我们定义第x行,第y列的格子的坐标为(x,y),也就是说,从左上角到左下角依次为(1,1),(2,1),...,(n-1,1),(n,1),从左上角到右上角依次为(1,1),(1,2),...,(1,m-1),(1,m),右下角的格子坐标为(n,m)

在最新的一次活动中,场地上会有一个名叫“小车发射器”的装置,Awa在这里召唤小车!同时,Awa可以在其他格子上部署导向板:当小车开到一个未触发的导向板上时,小车就会按照导向板指向的方向前进,而当小车开出地图了,小车就会自爆!(在这个问题中,小车的油非常充足,只要没有自爆就会沿着当前行驶方向一直移动,同时,我们不考虑小车发射器的碰撞体积,也就是说小车发射器发射完小车就会消失,不会影响小车的后续运动

当然,因为Awa的干员练度达到了力大砖飞的境界,他并不需要通过小车的帮助来击败敌人,因此,他非常随意的在地图上摆满了导向板,然后开动小车。同时,他非常好奇小车一共能转向多少次,因为小车开的太慢了,Awa懒得去数,因此他把这个问题扔给了你。
90度和180度转弯都算作“一次转向”,每个导向板只会在第一次走到的时候被触发,初始位置的导向板会被触发。

输入描述:

第一行四个正整数n,m,x,y,表示矩形区域大小为n行m列,以及小车发射器的位置(x,y)(对应位置上的方向就是小车的初始方向)
之后n行每行m个字符U,D,L,R之一,表示该格子的导向板类型,或者小车的初始方向。
U:向上; D:向下; L:向左; R:向右

输出描述:

一个非负整数,表示小车转向的次数。
示例1

输入

复制
2 2 1 1
DU
RU

输出

复制
2

备注: