我正在开发一个应用程序,我想要获取 M 中所有可能的元素 k 组合的集合 C(带有 ||M|| = m),并用子集的 k 组合集合覆盖 C M 中的 N_i,与 ||N_i|| = n < m ∀ N_i
所以有 (m 选择 k) 个组合要覆盖,n 个元素的每个集合 Q_i 将包含 (n 选择 k) 个组合。
我想要的是一种构造集合 Qi 的算法,使得 q 最小化(即,尽可能接近(m 选择 k)/(n 选择 k))
因此,例如,如果 m=100、k=3 和 n=10,我想要最小的 10 个元素集,使得它们各自的 3-组合集覆盖 (100 选择 3) 3- M的组合