首先:我不是程序员,从未学过编程/算法。 实际上我必须编程,主要是awk,或ruby,一些bash。
在今天的任务中,我在一个纯文本文件中有一个巨大的数据集(浮点数),一个记录/行,以及该集合中所有数字的总和,但总和是错误的,因为有些数字(可以只有一个)在集合中是负数,但我们在文件中看不到它(如果元素是负数则没有迹象)。
但我必须找到它/他们:所以首先我计算出正确的总和(加上所有数字awk
)并不关心他们的迹象。
现在我现在是原始金额(关心标志)和我的新总金额之间的差异。但是我必须找到数据集的所有子集,它们具有与差值/ 2完全相同的总和。
E.g:
DATA:
1,2,3,4,5
ORIG SUM:
5
现在我们可以计算1 + 2 + 3 + 4 + 5之间的差异 - ORIG SUM:15-5 = 10。 10/2 = 5,所以我需要找到所有可以加起来为5的子集,即[1,4],[2,3],[5]。
有没有正确的方法呢?我更喜欢awk,ruby,shell脚本,但是python和perl都是可以接受的(没有大量使用外部库,因为我没有权利安装它们。)
提前致谢。