Este repositorio contiene la implementación de un algoritmo de backtracking para seleccionar la mejor combinación de cultivos en un campo agrícola, considerando múltiples restricciones y buscando maximizar el beneficio económico.
El objetivo de este proyecto es desarrollar un algoritmo que permita seleccionar las semillas óptimas para un campo cuadrado, basándose en los siguientes factores:
- Temporada adecuada para cada cultivo.
- Riesgo asociado a cada parcela.
- Limitación en las dimensiones de los cultivos ((N + M \leq 11)).
- Restricción de repetir únicamente un cultivo entre los seleccionados.
El algoritmo utiliza técnicas de backtracking para explorar todas las posibles configuraciones y seleccionar la combinación más beneficiosa.
- Selección automática de cultivos: Maximiza el beneficio teniendo en cuenta costos, riesgos y restricciones.
- Análisis de complejidad: Incluye cálculos teóricos y prácticos de la complejidad temporal del algoritmo.
- Visualización del campo: Representa gráficamente la disposición de los cultivos seleccionados.
- Simulación práctica: Permite ejecutar casos de prueba en configuraciones específicas.