Domanda

Assumilo $ A $ è l'insieme di oggetti in modo tale che ogni oggetto $ x_i in un $ ha valore $ w_i $. Desideriamo mettere in valigia questi oggetti in gruppo, ogni pacchetto contenente almeno $ k $ oggetti. Il nostro obiettivo è ridurre al minimo la differenza massima tra il valore massimo e minimo di ciascun pacchetto. In altre parole, il nostro obiettivo è ridurre al minimo $ L $ con il vincolo che tutti i pacchetti dovrebbero avere più di $ k $ oggetto in essi.

$$ l = max_ {i in mathrm {packs}} left { max_ {j in mathrm {pack} (i)} w_j - min_ {k in mathrm {pack} (i )} w_k diritto }. $$

Ad esempio per il seguente imballaggio, $ L $ è $ max {(30-20, 120 - 100)} = 20 $. $$[20, 30] \;\; [100,110,120]$$

Mi chiedevo se esiste un algoritmo avido che può fare il lavoro.

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a cs.stackexchange
scroll top