Estoy haciendo un programa que establezca cruces de horario de los
estudiantes de un liceo. A veces a los estudiantes se les cruzan los
horarios de las materias, por lo que debo ubicarles en otra clase.
Este problema me permite tener multiples combinaciones de horarios y
de alumnos, dandome problemas en la programacion. Java maneja alguna
API para el trabajo de problemas combinatorios?, conocen algun
mecanismo para resolver este problema?.