Предположим, что существует n очередей положительных чисел. Мне нужна минимальная сумма k чисел, выбранных из этих очередей. Обратите внимание, что это очереди, поэтому упорядочение важно, и только один номер может быть выбран из любой очереди за раз. Как только это число будет выбрано и удалено из очереди, мы можем перейти к следующей очереди в этой очереди. Поэтому сортировка недопустима (порядок важен).
Например:
Найти минимальную сумму двух чисел
2 12 3 4
8 2 2
10 10
В приведенном выше примере я могу либо выбрать 2 из первой очереди, либо 8 из второго или 8 и 2 из второго. Оба варианта дают сумму 10.
Пример 2:
Найти минимальную сумму двух чисел
4 15 2
8 2 2
10 10
В приведенном выше примере нужно выбрать 8 и 2 как из второго списка.
Сначала я думал о линии сортированных списков слияния K, но это не сработает. Я могу думать только об одном рабочем подходе. Он должен попробовать все комбинации из всех очередей. Может ли кто-нибудь предложить лучший способ или привести меня к этому?