is basically the Maximum-weight bipartite matching with inverted weights. Proof: Advanced Algorithms UE 1.3