P2415 集合求和 详解
此题我认为主要考数学逻辑,这个题目考的是你面对代码时,是否会从中去找规律推导一个数学公式。
先看题目:
此题目与集合有关,所以对于数学基础不好的同学,我会先给你讲一下这个集合的相关知识。
一,首先,what?集合知识是啥
1,定义:集合是确定的,互异的对象(也可以叫元素)组成的整体。
结论:集合里的元素都是唯一不重复的。
2,子集与真子集
通俗讲:
子集包含真子集,如果是真子集,那么他一定也是子集,如果是子集,不一定是真子集。
真子集是集合A里面至少有一个元素不在B里面,则A为B真子集,,即是A的元素个数一定比B元素个数少
子集是A的元素在集合B里面都有,A的元素可以比B里面元素少,也可以一样,而真子集不能一样,则叫A为B子集,即是A的元素个数可以比B元素个数少,也可以跟B元素个数一样
3,子集个数计算
一个集合有n个元素,那么他子集个数为 2的n次方个,包含空集
即A集合里面有三个元素,则它子集个数有 2的3次方个,即8个
4,子集所有元素的总和怎么算
公式为
a1 + a2 +a3 +......+an 的意思是集合里面每个元素相加的总和
1个元素{ 1 }: 子集有 { 1 }
子集元素和:a1 *2的0次方
2个元素{ 1,2 }:子集有 { 1 }{ 2 }{ 1,2 }
子集元素和:( a1 +a2 )*2的1次方 ,此时元素{ 1,2 }里面元素总和重复了两遍
3个元素{ 1,2,3 } :子集有{ 1 } { 2 } { 3 } { 1,2 } { 1,3 } { 2,3 } { 1,2,3 }
子集元素和:( a1 + a2 + a3 )*2的2次方 ,此时元素{ 1,2,3 }里面元素总和重复了4遍
之后的元素个数同理,为什么上面元素个数重复4遍,
1,考虑子集只有 1 元素时,元素总和重复一遍
2,子集有2个元素时,{ 1,2 } { 1,3 } { 2,3 } ,你只需要看一个元素出现的次数即知道元素总和重复了多少次,此时元素总和重复了2次,看1出现了两次,即知元素总和重复2次
3,子集有3个元素时,重复了一次,为他自己本身,所有总共算元素总和重复了四遍
所有此题得解
mark,用来统计输入的元素数量,之后对其进行公式运算