I have B different labels and C different objects. Each label can be assigned to more than one object at the same time, and each object can have more than one label.

I want to assign every label to exactly X of my C objects, while ensuring that no object has more than Y different labels.

For some values of C, this will not be possible. My question is: What is the smallest value of C for which I can do this assignment?