Questo è emerso mentre stavo cercando di rispondere a questa domanda sulla minimizzazione della lunghezza dei cavi . Stavo per chiamare questo il problema del "matrimonio poligamo", ma Internet, quindi i gattini. Sìì!
Supponiamo di avere gattini che hanno bisogno di essere adottato da N persone, M > N . Per ogni gattino, io e ogni persona j c'è un costo c i j . Vorremmo ridurre al minimo il costo totale per l'adozione di tutti i cuccioli. V'è anche un insieme di vincoli: ogni persona j è in grado di adottare non più di u j gattini.
Senza i vincoli il problema è semplice; ogni gattino va con la persona j per cui c i j è minimo. Con i vincoli esiste un algoritmo efficiente per questo problema o è NP-difficile?