UOFTAC - Foxhole

no tags 

Everyone knows that Foxen love digging holes. You've been observing one Fox in particular, who's preparing to burrow underground in search of treasures. When viewed from the side, as a cross-section, his digging site can be represented as a grid of cells, $H$ ($1 \leq H \leq 100$) deep and $W$ ($1 \leq W \leq 100$) across. Every cell contains either dirt (represented by "D"), stone ("S"), empty space ("E"), or a treasure ("T"). The surface can also be traversed, effectively giving the grid an additional row of empty cells above the topmost row.

The Fox starts immediately above the top-left cell, which is guaranteed to not be empty. It has a set of $N$ ($1 \leq N \leq 1000$) actions in mind before it starts its dig, which it will execute in order. Each action consists of moving either left (represented by "L"), right ("R"), or down ("D") by one cell. If the cell that the Fox would move to contains stone, or is beyond the boundaries of the grid in any direction, it will skip that action. If it enters a cell with a previously-uncollected treasure, it will collect it, leaving the cell empty. If the cell immediately below the Fox is ever empty, it will fall down until this is no longer the case. Note that collecting treasure occurs before falling, and that the Fox stops falling if it hits the bottom of the grid.

There are $T$ ($1 \leq T \leq 20$) scenarios as described above. For each one, you'd like to determine how many treasures the Fox will collect throughout the course of its dig.

Input

First line: 1 integer, $T$

For each scenario:

First line: 3 integers, $H$, $W$, and $N$

Next $H$ lines: $W$ characters, representing the $i$th row of the grid, for $i = 1..H$

Next $N$ lines: 1 character, representing the $i$th action, for $i = 1..N$

Output

For each scenario:

1 integer, the number of treasures collected in total.

Example

Input:
2
2 3 4
DDD
TES
R
D
R
L
3 2 6
TE
TE
ET
R
R
L
R
L
R
Output: 1
2

Explanation of Sample:

In the first scenario, the Fox moves right along the surface, then digs down to the first row. As the cell below it is empty, it immediately falls to the 2nd row. It ignores its next action, as the cell to its right is filled with stone, and finally moves left to claim a treasure.

In the second scenario, it moves to the right and promptly falls all the way down to the 2nd row. Because the Fox is already in the rightmost column, it ignores the action to move right. It then moves left, collects the treasure there, and then falls to the bottom row. Finally, it moves back and forth between the bottom-left and bottom-right cells twice - however, it only collects the treasure in the latter cell the first time.


hide comments
P_Quantum: 2013-07-25 17:12:27

Finally accepted..!!

BLANKRK: 2013-07-16 14:10:29

yup!! in fst attmpt... :) nice prblm..

Vaibhav Agarwal: 2013-07-16 12:47:34

easy one... AC at first attempt.

Hamim Raavi: 2013-07-13 19:00:09

its really an easy one... keep on reading and coding

Vipul Pandey: 2013-07-11 14:58:01

this question teaches you a very nice concept that is - "read the question carefully".
A simple question. Just do as directed. Got AC in first attempt.

Last edit: 2013-07-11 14:58:51
Vijay Jain: 2013-07-07 13:51:07

nice question :)
no special algorithm required just follow the steps mentioned in the question

Last edit: 2013-07-07 13:51:47
Piyush Raman Srivastava: 2013-06-22 14:05:17

its just about how well you understand the problem statement... especially one word that makes the difference!

Himanshu: 2013-06-12 13:25:26

why i m getting SIGSEGV..........
is there is tricky case

vishal chaudhary: 2013-06-09 11:56:18

finally..AC..lot of silly mistakes...but very nice explantion...those who r still getting WA ..read the problem again...:)

Chandan Mittal: 2013-06-01 00:17:08

what a silly mistake each time costed me many WA
finally got AC :)

Last edit: 2013-06-06 12:46:46

Added by:SourSpinach
Date:2013-05-17
Time limit:1s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ASM64
Resource:Own problem, used in the 2012 UofT ACM Tryouts