@2d0x

Каким способом проверить наличие уникального распределения в матрице?

Третий день бьюсь над решением:
Необходимо понять, существует ли такое распределение работников с набором навыков по работам, так чтобы все работы были выполнены.

Свел всё к задаче:
есть n человек и m навыков.
Считаем, что каждый человек может обладать от 1 до m навыков
нужно понять, существует ли хотя бы одно такое распределение людей, что все навыки будут покрыты.

Фактически, матрица m на n из единичек в случайных местах.
Считаем, что людей больше или равно числу работ, иначе очевидно, что такого распределения нет.

Самый простой случай:
1 1 1
1 0 0
1 0 0
три человека, один умеет всё, другие умеют одно и тоже. — Их недостаточно

Полагал искать ранг матрицы, чтобы он был не меньше числа навыков, но ранг матрицы
111
111
111
равен одному, а условиям распределения такой набор работников соответствует.
  • Вопрос задан
  • 52 просмотра
Решения вопроса 1
longclaps
@longclaps
Венгерский алгоритм решает более общую задачу.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы