Caro mio, il problema sembra semplice, come hanno supposto i miei predecessori, ma al contrario, in questo semplice esercizio, ti trovi di fronte ad un problema NP-completo.
Questo e' il "problema dello zaino" (Knapsack problem)
Leggi qui:
Come approccio standard puoi utilizzare il 'backtracking', quello che viene utilizzato nella risoluzione del problema delle 8 regine.