Salvando Robots
Submit solution
Points:
100 (partial)
Time limit:
1.0s
Memory limit:
1G
Author:
Problem type
Allowed languages
C, C++, Python
Descripción
Dado un mapa con filas y columnas. El estado de la celda en la ésima fila () y la ésima columna () está representado por un caracter como sigue:
.
: La celda está vacíao
: La celda contiene un robot.E
: La celda contiene una salida. Se asegura que en el mapa solo habrá una salida.
Eduardo está intentando salvar tantos robots como sean posibles haciendo la siguiente operación algún número de veces:
- Seleccionar una de las siguientes direcciones: arriba, abajo, izquierda, derecha. Todos los robots que aparecen en el mapa se mueven una vez en la dirección seleccionada. Cuando un robot se mueve fuera del mapa, este robot explotará y por tanto desaparecerá del mapa. En cambio, si un robot se mueve a la celda que contiene la salida, el robot será salvado e inmediatamente desaparecerá del mapa.
Ayude a encontrar el máximo número de robots que pueden ser salvados.
Entrada
La primera línea de la entrada contiene dos enteros y ().
Las siguientes líneas contienen cada una caracteres, que representan el estado de cada celda del mapa.
Salida
Imprime el máximo número de robots que pueden ser salvados.
Subtareas
- Subtarea 1: ( puntos)
- Subtarea 2: Para todo par () se garantiza que
.
( puntos) - Subtarea 3: Sin restricciones adicionales ( puntos)
Ejemplos
Entrada 1
3 3
o.o
.Eo
ooo
Salida 1
3
Seleccionando izquierda, arriba, derecha.
Entrada 2
2 2
E.
..
Salida 2
0
Entrada 3
3 4
o...
o...
oooE
Salida 3
5
Seleccionando derecha, derecha, derecha, abajo, abajo.
Entrada 4
5 11
ooo.ooo.ooo
o.o.o...o..
ooo.oE..o..
o.o.o.o.o..
o.o.ooo.ooo
Salida 4
12
Comments