Suppose we want to assign $n$ items to $m$ customers ($m \geq n$). Each assignment from an item $i$ to a customer $j$ will has an associated cost $c(i,j)$. Find an assignment that maximizes the total cost. Here we must assign every item, therefore a customer might receive more than one item. Moreover, we require that each customer must receive at least one item.
This problem can be modeled as an integer linear programming. However, I wonder there might be a better approach (a polynomial algorithm??). Note that if we do not require each customer must receive at least one item, then we just assign each item to the customer with the maximum cost. Does anyone have any idea?