Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Se le pide al estudiante que diseñe un algoritmo capaz de conseguir la salida del laberinto (en
caso que exista alguna) con la menor cantidad de pasos, pero por desgracia el laberinto es un lugar
peligroso y complejo, ya que existen distintos obstáculos, y es necesario conseguir una llave para poder
salir del mismo.
Es posible conseguir distintos objetos en el laberinto, que estarán representados por: Nombre
del Objeto, Cantidad de Fuerza que proporciona el mismo, y coordenadas X,Y.
Por ejemplo:
Espada 4 1 5
Escudo 2 2 3
La espada se encuentra en la casilla 1,5 y proporciona fuerza 4.
El escudo se encuentra en la casilla 2,3 y proporciona fuerza 2.
El objeto más importante (que siempre está presente) es la llave, que será usada para poder salir
del laberinto. La llave se representará como un objeto llamado “Llave” con las coordenadas X y Y de la
misma (no se le asigna fuerza).
Entrada:
La entrada será a través de un archivo de texto llamado Entrada.in, que tiene:
1. Una línea con 5 enteros, representados como: A L G O P: A ancho del laberinto, L largo del
laberinto, O número de objetos en el laberinto, G número de guardianes en el laberinto, P
número máximo de pasos permitidos.
2. L líneas de A caracteres indicando la estructura del laberinto:
1. x indica paredes
2. _ indica camino libre
3. v para las trampas
4. T la posición inicial de Teseo (aparece una sola vez), y
5. S para la salida (aparece una sola vez)
3. G líneas indicando el nombre de los guardianes, su fuerza y su ubicación en el mapa.
4. Por último O líneas indicando el nombre del objeto, la cantidad que fuerza que proporciona
(puede ser 0) y su ubicación en el mapa.
Salida:
La salida será vía consola, tendrá que indicar el mensaje “Teseo logra salir del laberinto” junto a los
objetos encontrados y cuales guardianes han sido eliminados, además del camino recorrido usando las
letras Norte Sur Este u Oeste.
En caso de no conseguir la salida, o se acabe el tiempo, indicar con un mensaje “Teseo no pudo
lograrlo”.
Ejemplo 1:
Entrada: Salida
5 5 1 2 20 Teseo logra salir del laberinto
x_xxx Objetos encontrados: Espada, Llave
T_v_x Guardianes eliminados: Minotauro
x_x_x ESNNSEESSS
xx__x
xxxSx
Minotauro 4 4 3
Llave 2 1
Espada 4 2 3
Ejemplo 2:
Entrada: Salida
5 3 0 1 10 Teseo logra salir del laberinto
xxxxx Objetos encontrados: Llave
ST___ EEEOOOO
xxxxx
Llave 5 2
Notas:
Es obligatorio conseguir el camino más corto desde el inicio del laberinto hasta la salida
consiguiendo la llave.
Pasar por una trampa por primera vez se tardará 1 turno extra para poder desactivarla.
Las trampas desactivadas no consumirán turnos extras.
La cantidad de fuerza necesaria para eliminar a un guardián tiene que ser igual o superior a la
del guardián.
Es posible que la llave se encuentra colocada en alguna trampa, o incluso que la tenga algún
guardián, en estos casos, la posición de la llave coincidirá con la de la trampa o la del guardián.
Eliminar a un guardián no consumirá ningún turno, ni disminuirá la fuerza de los objetos
encontrados
Es MUY importante para la optimización del programa, evitar los caminos “bucles”, ya que
genera caminos innecesarios, los caminos bucles son caminos en los cuales se repiten los pasos.
◦ por ejemplo: