
- Por Riley Wallace
- ·
- Publicado 10-jul-2025 14:47:29
Radar de Palíndromos
La tecnología más reciente de radares de la NASA es capaz de capturar la forma de objetos voladores en forma de cadenas de caracteres. Como todos..
La NASA enviará un grupo de rovers exploradores a una plataforma en Marte.
Esta plataforma, curiosamente rectangular, debe ser recorrida por los rovers para que sus cámaras capturen una imagen completa del terreno circundante y la envíen a la Tierra.
Tu tarea consiste en desarrollar una API que desplace los rovers por la plataforma.
En esta API, la plataforma se representa como una cuadrícula de 10x10, y cada rover tiene un estado que consta de dos partes:
'N', 'S', 'E', 'W'
)'0:0:N'
El input del programa es una secuencia de comandos de movimiento de un carácter:
'L'
y 'R'
cambian la dirección del rover. 'M'
mueve el rover una casilla hacia delante en la dirección en la que ya está orientado.Si un rover llega al final de la plataforma, deberá volver a la primera casilla del extremo opuesto.
El output del programa es la posición final del rover después de que se hayan ejecutado todos los comandos de movimiento. La posición se representa como unas coordenadas y una dirección, unidas por dos puntos para formar una cadena. Por ejemplo: un rover cuya posición es `2:3:W` está en la casilla (2,3), mirando al oeste.
'MMRMMLM',
el output debería ser '2:3:N'
'MMMMMMMMMM',
el output debería ser '0:0:N'
(debido a que regresa a la casilla del extremo opuesto)
No hay restricciones en el diseño de la interfaz pública.
Una interfaz pública para la API podría ser algo así:
public class MarsRover
{
public string Execute(string command);
}
'RMMLM',
y regresa al punto final después de los movimientos '2:1:N'
Crédito: Google Code Archive
Una vez que completes esta kata, ¿por qué no pruebas la kata completa Mars Rover para un reto más avanzado?
La tecnología más reciente de radares de la NASA es capaz de capturar la forma de objetos voladores en forma de cadenas de caracteres. Como todos..
Introducción Como un desarrollador que escribe blogs quiero una herramienta que me ayude a entender mejor el texto que estoy redactando. Para ello..
Introducción Esta es la tercera parada en la ruta de aprendizaje de Test-Driven Development. A estas alturas, deberías estar razonablemente..
Suscríbete a nuestra newsletter para que podamos hacerte llegar recomendaciones de expertos y casos prácticos inspiradores