Este es el problema de coincidencia de peso máximo. Es solucionable en tiempo polinomial.
Cree un vértice para cada alumno y un vértice para cada asiento abierto. Cree una ventaja entre un estudiante y un asiento si ese estudiante está interesado en el asiento y póngale el peso apropiado según lo interesado que esté el estudiante en el asiento. Para lo que define como la “mejor solución”, puede hacer que todos los pesos de borde sean iguales. Una vez que encuentre una coincidencia máxima, asigne a cada estudiante el asiento con el que están emparejados (si corresponde).
Para obtener más información sobre la implementación del algoritmo, puede comenzar con http://en.wikipedia.org/wiki/Edm…
- ¿Qué piensan los profesores de matemáticas del libro de Marilyn Vos Savant, 'El problema matemático más famoso del mundo: la prueba del último teorema de Fermat'?
- ¿Cuántas veces es 1,000 más grande que 1?
- ¿Qué sabemos acerca de las cardinalidades mayores que [matemáticas] 2 ^ {\ aleph_ {0}} [/ matemáticas]?
- ¿Se ha considerado alguna vez el radianes o grados para el sistema SI?
- Si (x + 1 / x) ^ 2 = 3, ¿cuál es el valor de x ^ 206 + x ^ 200 + x ^ 90 + x ^ 84 + x ^ 18 + x ^ 12 + x ^ 6 + 1?
En cuanto a su segunda pregunta, sí, un gráfico bipartito satisface la condición de Hall si y solo si existe una coincidencia saturante. Ver http://en.wikipedia.org/wiki/Hal…
EDITAR: De hecho, el algoritmo de coincidencia de Edmond es excesivo para este problema, ya que se trata de coincidencias en gráficos generales, no solo gráficos bipartitos. Puede salirse con la suya con un algoritmo más simple como el algoritmo húngaro. Ver http://en.wikipedia.org/wiki/Hun…