中学数学题目:射击训练,每个靶得分为0环到10环(共11种可能),一个人打了10个靶,那么:
打中0环的可能只有一种,即每个靶都打种0环。打中100环情况一样,只不过把得分换为丢分。
打中1环有10种可能,即第1个靶打中1环,其余的靶打中0环;或者第2个靶打中1环,其余的靶打中0环;……或者第10个靶打中1环,其余的靶打中0环。打中99环情况一样,只不过把得分换为丢分。
打中2环有55种可能,分为两类,1) 这2环在同一个靶上,有10种可能;2) 这2环分两个靶打中,每个靶1环,有10*9/2 = 45 种可能。一共有55种可能。打中98环情况一样,只不过把得分换为丢分。
问打中90环的情况有多少种。
思路1:用生成函数。求多项式(x^10 + x^9 + ... + x + 1)^10中x^90那项的系数,为92378。Matlab代码:
a = ones(1, 11);
a2
=
conv(a,a);
a4 = conv(a2,a2);
a8 = conv(a4,a4);
a10 = conv(a2,a8);
a10( 91 ) % arrays in Matlab are 1 - based.
a4 = conv(a2,a2);
a8 = conv(a4,a4);
a10 = conv(a2,a8);
a10( 91 ) % arrays in Matlab are 1 - based.
ans = 92378
这个办法对所有的环数都成立。
思路2:多重组合。一共在10个靶上丢了10环,考虑把10个相同的小球放到一排10个杯子里边的情况有多少种。10个杯子之间有9个隔板,假设我们有一排19个小坑,选出其中10个小坑放球,另外那9个坑放隔板,那么第1个隔板之