История изменений
Исправление
vertexua,
(текущая версия)
:
Тебе надо быстро или точно, но с большим использованием памяти?
Если быстро, то просто жадный алгоритм.
Если точно, то динамическое программирование как в задаче «Двумерное динамическое программирование» вот тут https://habrahabr.ru/post/113108/. Представляешь выбор куда положить список как выбор шага вниз или вправо. Путь - это комбинация поворотов вправо или вниз, значит эквивалентно разбиению на два множества. Сложность и потребление памяти - O(n^2) от количества списков в множестве
Исходная версия
vertexua,
:
Тебе надо быстро или точно, но с большим использованием памяти?
Если быстро, то просто жадный алгоритм.
Если точно, то динамическое программирование как в задаче «Двумерное динамическое программирование» вот тут https://habrahabr.ru/post/113108/. Представляешь выбор куда положить список как выбор шага вниз или вправо. Путь - это комбинация поворотов вправо или вниз, значит эквивалентно разбиению на два множества