Вы можете думать об этом как о проблеме двудольных графов.Если в неделе есть черный день, между этой неделей и днем недели.Теперь просто примените структуры данных, предназначенные для хранения графов, такие как матрицы смежности или списки соседей.