Bacterium
Ограничения: время – 1s/2s, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Luka is bored in chemistry class yet again. This time, he's playing with intelligent bacteria. He has
arranged his `K` bacteria on a rectangular board divided in `N` rows, labelled with numbers from 1 to `N`
starting from the top, and `M` columns, labelled with numbers from 1 to `M` starting from the left.
Each bacterium begins its adventure in a certain cell, facing one of the four neighbouring cells, and
carries out the following actions every second:
- Reads the number `X` dedicated to that bacterium in the current cell.
- Turns 90 degrees clockwise, `X` times.
- If it is facing a cell outside the board, it turns 180 degrees.
- Finally, it moves to the cell that it is facing.
Luka has placed a trap in one cell. The trap will activate and kill the bacteria as soon as they all step on
that cell in the same second.
Since Luka only has two hours of chemistry class today, help him determine how long the game will
last, in seconds.
The first line of input contains the positive integers `N` (`3\ ≤\ N\ ≤\ 50`), `M` (`3\ ≤\ M\ ≤\ 50`), and `K`
(`1\ ≤\ K\ ≤\ 5`).
The second line of input contains the positive integers `X` and `Y`, the row and column where Luka has
placed the trap.
The remainder of the input consists of bacteria descriptions, for each bacterium `i` from 1 to `K`:
- two positive integers `X_i`, `Y_i` – the row and column of the starting cell of bacterium `i`, and the character `C_i` representing the starting direction that the bacterium is facing (U – up, R – right, D – down, L – left).
- N by M matrix of digits between 0 and 9, inclusive; the digit in row `x` and column `y` represents the number in cell `(x,\ y)` dedicated to bacterium `i`.
The first and only line of output must contain the total duration of Luka's game, in seconds. If the
game will never end, output `-1`.
Sample Input #1
3 3 1
2 2
1 1 R
010
000
000
Sample Input #2
3 4 2
2 2
3 4 R
2327
6009
2112
3 2 R
1310
2101
1301
Sample Input #3
4 4 3
4 3
1 1 U
1001
0240
3322
2327
1 3 L
9521
2390
3020
2421
2 2 D
3397
2013
1102
7302
Source: COCI 2012/2013, contest #5