What you actually have is a bipartite graph and you are looking for a perfect matching. The theorem that provides a characterization for such conditions is Hall's marriage theorem: There exists a perfect matching for the graph if and only if for any set of boys $B$, $|B|\leq|N(B)|$ where $N(B)$ denotes the set of girls that date at least one of the boys from $B$.