Проблемът е еквивалентен на намирането на максимално съвпадение в двустранна графика . Всеки елемент на колона представлява връх, всеки ред представлява ръб. Свързаната статия в Wikipedia предоставя някои указания за алгоритми за решаване на този проблем. Има имплементация на унгарския алгоритъм в библиотеката or-tools на Google .
Ето дадения пример, формулиран като графика, с червени ръбове, представляващи даденото решение:
За мен би било изненадващо, ако можете да намерите решение само в SQL.