Math 简便算法

来源:百度知道 编辑:UC知道 时间:2024/07/07 18:01:28
求集合{3,6,9.....30}的所有子集的元素之和

对集合V,V的任一元素在某一子集中或是出现,或是不出现,有两种情况。每种情况对应的V的子集种数都是相同的。
V的全部子集若有P个,且V的全部元素之和为S,则V所有子集中的元素之和就是P * S / 2。
设V的元素个数为N,对V的任一元素a,及V的任一子集U,a或者属于U,或者不属于,为2种对等的情况。由计数的乘法原理知,U的种类数为2 * 2 * ... * 2 = 2^N。因此我们称V的全部子集的构成的集合为V的幂集,它的元素个数就是P = 2^N。
综上,V中所有元素之和为2^N * S / 2 = S * 2^(N - 1)。

对本题,容易看出
N = 10,
S = 3 + 6 + 9 + ... + 30 = 10 * (3 + 30) / 2 = 165。
所以有
V中元素之和为
165 * 2^(10 - 1) = 165 * 512 = 84480。