Моя проблема заключается в следующем-
У меня есть несколько номеров, как показано ниже:
2
2
2
2
3
3
17
17
17
17
17
17
17
17
17
34
34
34
34
34
68
68
68
136
Итак, если я даю следующее число в качестве входных данных, вывод должен быть следующим:
[выход - это сумма заданного числа, которое чуть больше, чем вход]
Input Output
3 2,2
4 2,2
254 17,34,68,136
7 2,3,3 [or also with 2,2,2,2 but if return same sum,
then number count should min]
205 2,68,136
10 2,2,3,3
Я не просто хочу попробовать каждую комбинацию (то есть грубую силу), чтобы получить результат. Поэтому просто хочу спросить, существует ли какой-либо эффективный алгоритм для описанной выше ситуации.
Спасибо.