Examen Karel OIEG VII
Examen Karel OIEG VII
Examen Karel OIEG VII
5) Debes hacer un programa para cada problema, cada problema será evaluado con
alguna cantidad de casos de prueba. El puntaje que recibirás en cada problema,
dependerá del número de casos que tu programa haya resuelto satisfactoriamente.
6).Todos los problemas tienen el mismo puntaje, por lo que te recomendamos que
intentes primero los problemas que consideres más fáciles.
Intercambiando
Archivo: intercambiando.txt
Historia
Karel siempre ha sido un buen nieto. Por ello, ayuda a sus abuelitos en la granja
cuando se encuentra de vacaciones. La granja se ocupa de criar a los beepergochis. Los
beepergochis son más productivos si cambian de lugar de un día para otro. No importa si
el lugar es el mismo de dos días antes, basta que sea diferente al lugar del día anterior (no
tienen buena memoria). Por ello, Karel cambia a los beepergochis cada día.
Problema
Los beepergochis viven en un cuarto rectangular de dos calles (horizontales) y hay
exactamente un beepergochi por avenida (vertical). Tu trabajo consiste en cambiar de
calle a cada beepergochi, manteniendolos en su misma avenida. Es decir, si un
beepergochi está en la primera calle, entonces debes cambiarlo a la segunda calle y si está
en la segunda calle, debes cambiarlo a la primera.
Consideraciones
1. Karel inicia en el origen (primera calle y avenida) del mundo mirando al este.
2. Desconoces el número de beepergochis.
3. En cada avenida hay un beepergochi.
4. No importa la posición ni orientación final de Karel.
5. El beepergochi negro con blanco se llama manchas.
Señales
Archivo: senales.txt
Historia
Cuando Karel termina de ordeñar a los beepergochis, es necesario llevarlos a tomar el
sol. Sin embargo, existen muchos caminos en la granja. Por eso Karel tiene puesto
señales que le indican a que dirección debe doblar cada vez que se encuentra una
bifurcación o trifurcación. Las señales sólo se encuentran cuando hay una división de
caminos.
El camino está formado de montones de uno, dos, tres y cuatro beepers. Cuando el
camino no tiene divisiones, entonces esta formado por un beeper. Cuando el camino tiene
una o más divisiones, entonces habrá una señal que indique que camino tomar. Dos
beepers significa que debe doblar a su derecha y tres significa que debe continuar de
frente y 4 que debe doblar a su izquierda.
Problema
Tu trabajo consiste llevar a Karel desde un extremo del camino, a otro extremo del
camino.
Consideraciones
1. Karel inicia en un extremo del camino dando la espalda a un lugar sin beepers.
2. El camino de beepers está hecho de manera que cada beeper está a sólo un paso de
distancia del anterior y del siguiente (mas no se sabe en qué dirección).
3. Siempre hay una señal cada vez que tengas más de un camino a seguir.
4. No hay paredes en el mundo.
5. Karel debe terminar en el extremo que las señales le hayan llevado. No importa su
orientación final.
Area
Archivo: area.txt
Historia
Una vez que llega al campo donde tomarán el sol los beepergochis, Es necesario
calcular cuanto espacio está disponible. Lamentablemente, el campo no es totalmente
rectangular, su muro norte se encuentra deformado de tal modo que puede tener más o
menos espacio.
Problema
Karel debe calcular el espacio que hay en el cuarto. Para ello debe dejar un montón
igual al número de esquinas (espacio donde puede pararse Karel), que contiene el cuarto,
en la esquina inferior izquierda del cuarto.
Consideraciones
1. Karel inicia en la esquina inferior izquierda del cuarto mirando al norte.
2. Karel tiene suficientes beepers para poder contar el área.
3. Los muros del cuarto son rectos salvo el muro norte que puede tener deformaciones.
4. Karel debe dejar un montón, igual al número de esquinas que contiene el cuarto, en
la esquina inferior izquierda del cuarto.
5. No importa la posición ni orientación ni la cantidad de beepergochis que tiene su
abuelita.
Cosecha
Archivo: cosecha.txt
Historia
Las labores de las granjas, como todos sabemos, son muy variadas. Además de
organizar a los beepergochis, Karel debe ocuparse de sembrar y cosechar la granja de su
abuelita. En la granja hay dos tipos de plantas, las “pares” y las “impares”. Donde crecen
las plantas pares solamente pueden crecer pares y donde crecen las plantas impares
solamente pueden crecer impares, así que Karel debe sembrar una semilla de planta “par”
en cada lugar donde haya una planta par y un semilla de planta impar donde haya una
planta impar.
Problema
Karel se encuentra parado en la esquina inferior izquierda de la granja, sin beepers en
su mochila. La tarea de Karel consiste en cortar todas las plantas, pares e impares
(recoger todos los beepers) y sembrar semillas de plantas pares e impares en los lugares
adecuados (dejar un beeper donde había un planta impar y dos beepers donde había una
planta par).
Consideraciones
1. Karel acaba su tarea cuando ha cortado todas las plantas y sembrado las semillas.
2. Al principio, Karel no lleva beepers en su mochila.
3. No hay paredes ni beepers fuera de la granja y cada espacio de la granja tiene una
planta.
4. Karel comienza en la esquina inferior izquierda de la granja.
5. No importa la posición ni orientación final de Karel.
Corral
Archivo: corral.txt
Historia
Luego de hacer la cosecha, Karel debe alimentar a los beepergochis y después volver a
encerrarlos en su corral. Como todos sabemos, los beepergochis son extremadamente
desmadrozos!, pero les da mucho sueño después de comer (el famoso “mal del puerco”),
así que para Karel resulta mucho más sencillo construir un corral alrededor de los
beepergochis mientras duermen que estar arriándolos a su corral cuando despierten.
Problema
Karel debe construir un corral alrededor de los beepergochis. No debe haber espacios
vacíos dentro del corral.
Consideraciones
1. Karel comienza en la avenida más al oeste de la calle más al sur de la región donde
se encuentran los beepergochis.
2. Karel debe construir el corral colocando dos beepers en cada espacio alrededor de
los beepergochis (los beepergochis están representados por un beeper).
3. Uno de cada diez beepergochis muere diaramene por consumo de plantas pares, así
que prefieren reunirse en grupos de nueve para comer.
4. Karel acaba su tarea cuando ha terminado la cerca.
5. No importa la posición final de Karel ni su orientación.
6. Al principio, Karel comienza con la cantidad exacta de beepers necesarios para
construir la cerca.
7. En los casos de prueba, el contorno nunca se “traslapa” (ver imagen de “ejemplo de
estado inicial NO válido”).