This appears to be a nonlinear programming problem.  I haven't studied
NLP, so I don't know if there are any decent algorithms for this sort
of thing.  Here is a not-completely-inefficient algorithm :

Find the best deal for the last card in your list, ignoring shipping
costs.  Find the best deal for the last two cards in your list,
ignoring shipping costs.  Etc.  Store these cumulative costs in a list
for later reference.

Use backtracking to try all possible buying combinations.  As you go
along, keep track of the current price with shipping.  Add the current
price to the list price for the remaining cards you computed earlier.
If that's worse than the best deal you've ever found so far, even
without adding shipping on to the remaining cards, you can stop trying
the rest of this branch.

Further optimizations are possible.  For instance, if you have a group
of people who sell the same card you need, but don't sell anything else
you want, you can eliminate all but the cheapest seller's card, since
shipping costs can't possibly be reduced if you switch between them.
Do this before backtracking.  Perhaps you can find and prove other
optimizations.


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/algogeeks
-~----------~----~----~----~------~----~------~--~---

Reply via email to