If I understood correctly your problem boils down to the problem of finding the number of Perfect Matchings in a bipartite graph.
Items form the left set. Bins form the right. If a bin needs k items, you make k copies of that bin.
Now you form an edge between an item and a bin if the item is a possible candidate for the bin.
Now you need to find number of perfect matchings in this graph.
Unfortunately, this is a hard problem. Caculating the number of perfect matchings in a graph is equivalent to finding the Permanent of an associated matrix, which is #P-Complete. See: Computation of the Permanent.
Your best bet might be randomized/approximation algorithms.
Moron
2010-08-09 18:20:36