Good Bye 2015
F
New Year and Cleaning
Codeforces
2500
原题
← EG →
翻译中…

Limak is a little polar bear. His parents told him to clean a house before the New Year's Eve. Their house is a rectangular grid with $*h*$ rows and $*w*$ columns. Each cell is an empty square.

翻译中…

He is a little bear and thus he can't clean a house by himself. Instead, he is going to use a cleaning robot.

翻译中…

A cleaning robot has a built-in pattern of $*n*$ moves, defined by a string of the length $*n*$. A single move (character) moves a robot to one of four adjacent cells. Each character is one of the following four: 'U' (up), 'D' (down), 'L' (left), 'R' (right). One move takes one minute.

翻译中…

A cleaning robot must be placed and started in some cell. Then it repeats its pattern of moves till it hits a wall (one of four borders of a house). After hitting a wall it can be placed and used again.

翻译中…

Limak isn't sure if placing a cleaning robot in one cell will be enough. Thus, he is going to start it $*w*·*h*$ times, one time in each cell. Maybe some cells will be cleaned more than once but who cares?

翻译中…

Limak asks you one question. How much time will it take to clean a house? Find and print the number of minutes modulo $10^{9} + 7$. It's also possible that a cleaning robot will never stop — then print "-1" (without the quotes) instead.

翻译中…

Placing and starting a robot takes no time, however, you must count a move when robot hits a wall. Take a look into samples for further clarification.

翻译中…

Input

翻译中…

The first line contains three integers $*n*$, $*h*$ and $*w*$ ($1 ≤ *n*, *h*, *w* ≤ 500 000$) — the length of the pattern, the number of rows and the number of columns, respectively.

翻译中…

The second line contains a string of length $*n*$ — the pattern of $*n*$ moves. Each character is one of uppercase letters 'U', 'D', 'L' or 'R'.

翻译中…

Output

翻译中…

Print one line with the answer.

翻译中…

If a cleaning robot will never stop, print "-1" (without the quotes). Otherwise, print the number of minutes it will take to clean a house modulo $10^{9} + 7$.

翻译中…

Note

翻译中…

In the first sample house is a grid with $10$ rows and $2$ columns. Starting a robot anywhere in the second column will result in only one move (thus, one minute of cleaning) in which robot will hit a wall — he tried to go right but there is no third column. Starting a robot anywhere in the first column will result in two moves. The total number of minutes is $10·1 + 10·2 = 30$.

翻译中…

In the second sample a started robot will try to move "RULRULRULR..." For example, for the leftmost cell in the second row robot will make $5$ moves before it stops because of hitting an upper wall.

翻译中…

样例

Input #1
1 10 2
R
Output #1
30
InputCopy OutputCopy
Input #2
3 4 6
RUL
Output #2
134
InputCopy OutputCopy
Input #3
4 1 500000
RLRL
Output #3
-1
InputCopy OutputCopy
题目信息
题号
611F
所属比赛
时间限制
2 s
内存限制
256 MB
标签
二分
模拟

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。