2013-10-09 6 views
0

Ниже приведена проблема с максимальным двупартийным соответствием: http://www.spoj.com/problems/QUEST4/ Через форумы я узнал, что проблема может быть преобразована в проблему с минимальной вершиной, которая, в свою очередь, может быть решена с помощью Maximum Двустороннее соответствие. Однако я не понимаю, как проблема была преобразована в минимальную крышку вершин. Пожалуйста, помогите мне понять это.Как конвертировать SPOJ Quest4 в минимальную крышку вершин

+0

Этот вопрос не соответствует теме, потому что речь идет не о программировании. – user93353

+0

Как это не про программирование? Это вообще об алгоритмах. Поэтому я думаю, что это связано с программированием. В любом случае, этот вопрос был задан давно, и потребность больше не требуется. – rohitjv

+0

Правило - если в вашем вопросе есть код, и вопрос касается кода, он принадлежит здесь - иначе нет - http://meta.stackexchange.com/questions/165519/where-should-i-post-questions -або-алгоритмы-переполнение стека-или-программистов-se – user93353

ответ

1

Пусть C, R - множество всех строк и всех столбцов. Теперь пусть G - двудольный граф, имеющий ребра между C и R, где имеется ребро (i, j) от C до R, если в i-й строке и j-м столбце есть отверстие.

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

В нашем графе проблем каждый край представляет собой отверстие. Вершины представляют строки или столбцы. минимизировать объективно-блоки, покрывая все отверстия
, что эквивалентно -
минимизировать вершины, покрывая все ребра.