I have some vague recollections from my algorithms courses, but nothing specific comes to mind.
let S be a multiset of things we are interested in.
As input, we get T, s1, s2, … sn, all of which are subsets of S, except that T can have duplicates .
As output we get whether it is possible to pick exactly 1 element from each si so that we end up with T. What would be really nice is if in the case of failure it told you which si‘s were not covered by T (although this isn’t really well defined when there’s non-empty intersections in the si‘s).
In my case, most of the time there won’t be many elements which appear in more than one si‘s, but I have to account for the possibility. Also, an ‘online’ algorithm in which you provide the si‘s up front, and then pass in elements of T one at a time would be convenient.
This is almost like the exact hitting set problem, but I am given T, rather than trying to find a subset of T which has this property.
9