This is a optimization & combinatoric problem I solved as an excercise.
The problem:
You are the owner of a movie theater with 100 seats. You are selling tickets to groups of people who are offering their a) price per ticket, b) number of seats they want.
You can take only the complete offer of a group, you cannot sell them five seats when they are asking for ten.
All groups will be paying the lowest price among accepted offers (this is why it's called Dutch auction).
For example, if group one offers to buy 50 tickets for 10 dollars each and group 2 offers to also buy 50 tickets for 8 dollars each and you fulfill both offers, both groups will be paying 8 dollars per seat.
Your goal is to maximize the revenue from the movie. Optimal solution does not always mean the theater will be full.