Например, у меня есть массив numbers = [2,3,5,1,1,2,1] и sum needed = 5
Как я могу получить максимальное количество элементов, которые удовлетворяют сумме 5, например `[2,3] [5] [1,1,2,1]', и ответ должен быть последним, который я могу получить в общей сложности 4 элементов, что является максимальным в этом случае
Пожалуйста, прикрепите код к своей попытке, и тогда сообщество должно вам помочь :)




«максимальное количество элементов, удовлетворяющих сумме» означает, что вам нужна сумма наименьших чисел (это также очевидно из примера).
Так как насчет сортировки массива? тогда это простая итерация, чтобы получить комбинацию первый, которая достигает желаемой суммы
Хотя первая сортировка — хороший подход, имейте в виду, что получение первого комбинация может быть не очень простым. Например, результатом является первый приставка[1,1,1,2], что легко сделать после сортировки списка. Но допустим, что ввод [3,1,5,2] (отсортирован [1,2,3,5]), а целевая сумма по-прежнему 5, тогда нам придется пропустить 1, чтобы получить [2,3] как нашу самую длинную комбинацию.
что ты уже испробовал?