从小于或等于某个N的数字列表中最小化或找到n个理想子集和

问题描述 投票:1回答:1

给出一个数字列表,lst = [1, 1, 2, 4, 3, 2, 1, 1, 1, 2, 1, 4, 3, 1]我如何找到小于或等于4的理想列表数量?

这里有很多可能性。目标是最大程度地减少可能的列表数量。该程序将需要创建类似于以下内容的子集列表:{4}, {4}, {3, 1}, ... , {1, 1}

注意最后一个列表子集不等于4,而是更少。由于以下原因,此问题很难解决:

  • 程序必须能够找到小于或等于总和的subset-sums
  • 程序将需要通过首先查看largest值,将值从原始列表中删除为子集列表,从而<
给定一个数字列表,lst = [1,1,2,4,3,2,1,1,1,1,1,4,4,3,1]我将如何找到理想的数字列表小于或等于4?这里有很多可能性。目标是...
python c++ dynamic tree subset-sum
1个回答
1
投票
这是我的尝试。总体思路是对列表进行排序,然后从左向右移动,并在每次迭代中贪婪地选择最大的子集。时间复杂度为O(n)
© www.soinside.com 2019 - 2024. All rights reserved.