Desafío de la Palabra Más Larga
De lunes a jueves, a las 9:30, todos en mi familia tenemos una cita con el concurso Cifras y Letras. Podéis saber más sobre este programa en la web de RTVE y en wikipedia. El programa tiene varias pruebas de cálculo y vocabulario. Una de ellas, la prueba de la palabra más larga, es una de la que más nos gusta. En esta prueba a los concursantes se les dará 10 letras al azar, de las cuales uno de los concursantes podrá decidir cuántas serán vocales y con estas 10 letras los concursantes deben construir la palabra más larga.
Este repositorio contiene una librería en Python que he diseñado y desarrollado junto a mis hijos para encontrar la palabra más larga posible a partir de un conjunto de letras proporcionadas en el concurso de Cifras y Letras. A mis hijos les encanta ver cómo nuestro propio programa compite contra los concursantes, dándonos una "ventaja" divertida y educativa. Utilizamos un diccionario de la lengua española como base para el análisis y la búsqueda de palabras, lo que hace de este proyecto una gran herramienta tanto para el aprendizaje como para el entretenimiento familiar.
El principal objetivo de este proyecto es desarrollar una herramienta que pueda analizar rápidamente un conjunto aleatorio de letras y determinar la palabra más larga que se puede formar con ellas, según el Diccionario de la Lengua Española.
Otro objetivo que hemos alcanzado con este programa es resolver la siguiente pregunta ¿Cuál es la estrategia óptima a la hora de decidir el número de vocales? ¿4, 5 o 6 vocales?
El programa toma un conjunto de letras como entrada y busca en el diccionario todas las combinaciones posibles para formar palabras. Luego, selecciona la palabra más larga que se ajusta a las letras disponibles.
Para usar este programa, simplemente puedes clonar el repositorio y seguir las instrucciones de configuración y ejecución detalladas a continuación:
git clone https://github.com/imarranz/cifras-y-letras.git
cd cifras-y-letras
En nuestro código en Python, podemos cargar la librería cyl y poder trabajar con las diferentes funciones que hemos desarrollado para resolver el reto de la palabra más larga.
from cyl import cuantas_vocales, cuantas_letras, generar_juego, es_solucion, mejor_solucion, reemplazar_acentos
Asegúrate de tener Python instalado en tu sistema. Puedes descargar Python desde aquí. Además, necesitarás instalar algunas dependencias. Puedes hacerlo usando conda:
conda env create -f environment.yml
conda activate cifrasyletras
Las contribuciones a este proyecto son bienvenidas. Si tienes sugerencias para mejorar el algoritmo o añadir nuevas funcionalidades, no dudes en hacer un fork del repositorio y enviar un pull request.
Este proyecto está bajo la Licencia MIT. Consulta el archivo LICENSE
para más detalles.
De este repositorio hemos aprendido a descargar el Diccionario de la RAE en texto, algo fundamental para que funcione este proyecto.