Техническое задание: Реализация венгерского метода на Python
Цель проекта
Разработать программный код на языке Python, который решает классическую транспортную задачу с помощью венгерского алгоритма (метода). Решение должно быть самодостаточным и не зависеть от внешних библиотек для оптимизации.
Ключевые требования
- Использовать только стандартные возможности и простые функции Python.
- Избегать подключения сторонних библиотек (например, NumPy, SciPy).
- Алгоритм должен корректно находить оптимальное решение для сбалансированной транспортной задачи.
- Код должен быть хорошо структурирован, содержать комментарии для ключевых блоков.
- Реализация должна включать основные этапы венгерского метода: редукцию матрицы, поиск нулевых элементов, покрытие нулей минимальным числом линий.
- Обеспечить обработку стандартных входных данных (матрица затрат).
- Желательно предусмотреть вывод промежуточных шагов для наглядности работы алгоритма.
Ожидаемый результат
Предоставление рабочего файла с кодом (.py), который принимает входные данные (матрицу) и возвращает оптимальный план распределения и минимальные суммарные затраты.