如何从非重叠位集中形成最大数量的 1

How to form maximum number of 1s from non overlapping bitsets

Given N number of bitsets consisting of M bits, choose K bitsets such that there is no multiple 1s occurring in the same position. What is the maximum number of 1s that can be formed?

示例:

N = 5, M = 6
001100
011010
100100
111001
001010

答案是组合 011010100100,答案是 5。

我期待多项式时间的解决方案,尽管我不确定是否可行。问题取自 here,措辞可能更好。

这是weighted maximum set packing,其中每个位集被解释为一个集合,每个集合的权重是它的基数。