Ir al contenido (saltar navegación)

¿Qué es?

¡Acepta el reto! es un almacén y juez en línea de problemas de programación en español que acepta soluciones en C, C++ y Java.

No es un mero listado de problemas, sino mucho más. ¡Es un corrector automático!

Si quieres poner a prueba tu habilidad programando y compararla con la de otros, ¡éste es tu sitio!

¿Por dónde empiezo?

Si no conoces este tipo de jueces, te ayudamos a resolver el primer problema para que entiendas la dinámica del uso y no cometas los errores más comunes.

Luego puedes resolver algún otro de los múltiples problemas disponibles. Si no sabes por cuál empezar, puedes recorrer las diferentes categorías o mirar el problema de la semana que te proponemos abajo. También puedes mirar lo que otros usuarios están resolviendo.

¿Aceptas el reto?

Problema de la semana

Encriptación de mensajes

Uno de los métodos más antiguos para codificar mensajes es el conocido como cifrado Cesar. Su funcionamiento es simple: cada una de las letras del mensaje original es sustituida por otra letra que se encuentra un número fijo de posiciones más adelante en el alfabeto.

Así, si utilizamos un desplazamiento de 2, las apariciones de la letra 'a' se sustituyen por la 'c', todas las apariciones de la 'b' por 'd', etc. El método tradicional comienza de nuevo al llegar al final del alfabeto, de forma que, con el desplazamiento de 2, la 'y' se sustituye por la 'a' y la 'z' se sustituye por la 'b'.

Los desplazamientos también pueden ser negativos; si utilizamos un desplazamiento de -1, la 'E' se convertirá en 'D', mientras que la 'a' pasará a ser 'z'.

Nuestro cifrado Cesar no codifica los caracteres que no sean letras anglosajonas. Así, por ejemplo, los espacios o los símbolos de puntuación no sufrirán cambio alguno.