前几天看李开复参加的对话节目,当场面试清华博士生,其中有两个题目很有意思。
=================================================================
1、一副扑克片,拿去大小王,剩52张,任意抽两张牌,抽到一红一黑的概率多大?
2、1000个苹果放入10个箱子。客户如果要获得1~1000个苹果中的任意个数,都可以整箱搬,而不用拆开箱子。问世否有这样的装箱方法?
=================================================================
第一题我得出的答案是1/3。
第二题按照节目中的提示,应该是有这样的装箱方法,结果是:
1,2,4,8,16,32,64,128,256,489
我通过程序可以验证1~1000都可以表示成上面几个数的和。
=================================================================
但是当试着用数学归纳法或者级数分解证明其过程时没有思路,百思不得其证明。
不知道有没有兴趣朋友一起讨论。
=================================================================
1、一副扑克片,拿去大小王,剩52张,任意抽两张牌,抽到一红一黑的概率多大?
2、1000个苹果放入10个箱子。客户如果要获得1~1000个苹果中的任意个数,都可以整箱搬,而不用拆开箱子。问世否有这样的装箱方法?
=================================================================
第一题我得出的答案是1/3。
第二题按照节目中的提示,应该是有这样的装箱方法,结果是:
1,2,4,8,16,32,64,128,256,489
我通过程序可以验证1~1000都可以表示成上面几个数的和。
=================================================================
但是当试着用数学归纳法或者级数分解证明其过程时没有思路,百思不得其证明。
不知道有没有兴趣朋友一起讨论。
已知2为公比的等比数列:1,2,4,8,16,...
首先将前n项相加,得到和为:2**n-1
第n项与第1项相加得到和为:2**n
因此任取k个数相加的和属于(2**(n-1),2**n),且和不重复
前n项数列任取k个求和构成的和的个数为
Sum = C(n,1)+C(n,2)+C(n,3)+...+C(n,k)+...+C(n,n)泰勒级数展开式为
f=f0+f1*x**1/(1!)+f2*x**2/(2!)+...+fn*x**n/(n!)+...
构造函数f=x**n
采用泰勒级数在x=1处展开则
f0=x**n=1
f1=nx**(n-1)=n
f2=n(n-1)x**(n-2)=n(n-1)
fn=n!x**0=n!
f(n+1)=0
令y=x-1由此
f=x**n=1+n*y+n(n-1)*y**2/2!+...+n!*y**n/n!
=1+C(n,1)y+C(n,2)*y**2+...+C(n,k)y**k+...+C(n,n)*y**n
当x=2时
2**n=1+C(n,1)+C(n,2)+...+C(n,k)+...+C(n,n)=Sum+1
因此
Sum=2**n-1
即前n项数列任取k个求和构成的和的个数为2**n-1
且所有的和不同,而第n+1项为2**n
命题得证。
=============================================
晕,浪费我整整一天时间。
2^10 = 1024. 1000(DEC) = 1111101000(BIN)
所以 1000 以内的所有数字都可以用n1*2^0 + n2*2^1+n3*2^2+ ... + n9*2^9 + n10*489 这样的表达式表达。其中 n1...n10 为 1 或者 0。
n1*2^0 + n2*2^1+n3*2^2+ ... + n9*2^8 + n10*489