Me han enviado aquí desde StackOverflow con mi pregunta matemática / algoritmo.
Actualmente estoy trabajando con una organización que está desarrollando un sistema web, un área que intenta resolver los choques de la formación interna.
Un ejemplo (lo mejor que puedo describir es):
Lo que la empresa pretende es evitar que se produzcan enfrentamientos importantes (>10 personas afectadas) a la hora de planificar los horarios de los cursos de formación.
- 100 personas asisten al curso de formación A.
- 75 personas asisten al curso de formación B.
- 25 personas asisten al curso de formación C.
- 5 personas asisten al curso de formación D.
Si 75 personas que asisten a B asisten todas al curso A, y B se desarrolla al mismo tiempo, habría un total de 75 enfrentamientos.
Si las 25 personas del curso C asisten a los cursos A y B, la realización de cualquiera de estos cursos al mismo tiempo daría lugar a un mínimo de 25 enfrentamientos.
Si 3 personas asistieran a A y D, y se presentaran al mismo tiempo sólo 3 tendrían un problema y por lo tanto no sería un problema mayor.
El sistema que intentan desarrollar no tiene por qué resolver el choque en sí, sólo poner de manifiesto si es probable que se produzca un determinado número de choques a la hora de fijar una nueva hora.
Espero que esto explique la situación. Soy programador de profesión, así que este tipo de cosas son nuevas para mí, ¡cualquier indicación en la dirección correcta sería fantástica!