代码之家  ›  专栏  ›  技术社区  ›  Zsolt Botykai

查找大型数据集的子集总数

  •  1
  • Zsolt Botykai  · 技术社区  · 15 年前

    实际上,我必须编程,主要是用awk或ruby,一些bash。

    但是我必须找到它/它们:所以首先我计算了正确的总数(将所有数字加在一起) awk )不在乎他们的标志。

    例如。:

    DATA:
    1,2,3,4,5
    
    ORIG SUM: 
    5  
    

    现在我们可以计算1+2+3+4+5之间的差值-原始和:15-5=10。10/2=5,所以我需要找到所有可以加起来等于5的子集,即[1,4],[2,3],[5]。

    有合适的方法吗?我更喜欢awk、ruby、shell脚本,但python和perl都是可以接受的(不需要大量使用外部库,因为我没有权利安装它们)。

    提前谢谢。

    1 回复  |  直到 13 年前
        1
  •  2
  •   Johannes Weiss    15 年前

    你是说那个 SUBSET SUM 计算机科学中已知的问题?

    提示:查看相关问题,有许多关于该问题的问题/答案。