2024年2月东北三省三校(哈尔滨师大附中、东北师大附中、辽宁省实验中学)第一次联合模拟考试第19题
[题意]
十七至十八世纪的德国数学家莱布尼兹是世界上第一个提出三进制记数法的人。用二进制计数只需数字\(0\)和\(1\),对于整数可理解为逢2进1。例如:
自然数\(1\)在二进制中就表示为\((1)_2\),\(2\)表示为\((10)_2\),\(3\)表示为\((11)_2\),\(5\)表示为\((101)_2\)。
发现若\(n\in N^+\),可表示为二进制表达式
则
其中\(a_0=1, a_i=0或1(i=1,2,...,k)\)
1)记\(S(n)=a_0+a_1+...+a_k\),求证:
记\(I(n)\)为整数\(n\)的二进制表达式中\(0\)的个数,如\(I(2)=1\),\(I(3)=0\)
2)求\(I(60)\)
3)求\(\sum_{i=1}^{511}2^{I(n)}\)
[题解]
1)
设
根据定义有\(a_{k-1}\)和\(a_k\)一定等于1
即\((4n+3)_2\)为
则\((8n+6)_2\)为
则\((8n+3)_2\)为
(省略号部分三个数是一致的)
因此\((8n+3)_2\)等价于在\((4n+3)_2\)的倒数第三位之后插入一个\(0\)。
证明完毕。
2)
不停除2取余即可。先略。
这题一言难尽,学过计算机的同学是秒杀这道题的,只能说对没接触过计算机的很不公平吧
3)
对数字敏感的小伙伴应该发现\(511=2^9-1\)
因此\([1,511]\)实际可以表示为\([1,1...1(9个1)]\)。我们完全可以根据数位来枚举。
考虑将数字按照\(I(n)\)的值不同进行分组。
\(I(n)=0\)的情况
用十进制表示为:
因此这一部分的答案为\(2^0\times 9=9\)
\(I(n)=1\)的情况
对\((2^1-1)_2=1\)来说,只能在后面补个\(0\),有\(1\)个。
对\((2^2-1)=11\)来说,可以在第2个数字或第3个数字后面补\(0\),有\(2\)个。
以此类推:
对\((2^3-1)=111\)来说,有\(3\)个
...
对\((2^8-1)=111...1(8个1)\)来说,有$8个。
对\((2^9-1)=111...1(9个1)\)来说,没有位置可以补\(0\)。
因此\(I(n)=1\)有\(1+2+3+...+8=36\)个
至此,我们可以发现规律。
对\(I(n)=i\)的情况,考虑计算在\((2^j-1)_2=1...1(j个1)\)数字上补\(0\)方案数:
-
首先需要满足\(i+j\leq9\)
-
把\(i\)个\(0\)插入到\(j\)个不同的插槽中,可以多个\(0\)在同一个插槽,询问方案数,这是一个经典的组合数问题。方案数为\(C_{i+j-1}^{j-1}\)
因此答案我们可以表示成:
关键的一步,交换枚举顺序:
将\(i=0,1,2\)代入,我们猜想:
猜想的证明
二项式定理展开就证了。。。
因此,答案为
[来源]
2024年2月东北三省三校(哈尔滨师大附中、东北师大附中、辽宁省实验中学)第一次联合模拟考试
关注浙江省高中数学公众号获取最新数学资料!
[站长锐评]
如果学过信息学竞赛,或者接触过二进制相关知识的同学,这题的(1)(2)小题是比较简单的。但是如果从来没学过,要在考场里凭空想出二进制的基本性质和十进制转二进制的构造方法,是需要比较好的思维能力的。因此这题出的并不公平。你至少选择一个99%的考生没接触过的领域背景。
此外第(3)小题,需要对组合数领域的几个经典结论很熟练,同时也要有重新分组的思想,要在考场里想出来,那真的是需要数竞省一以上的天分了。
同时如果你学习过信息学竞赛里的数位DP,也是比较容易想到做法的
[难度]
1900