题目

11. 对于
n\in N^*
n\in N^*
,将
n
n
表示为
n = a_0\cdot3^0 + a_1\cdot3^1 + a_2\cdot3^2 + \cdots + a_k\cdot3^k
n = a_0\cdot3^0 + a_1\cdot3^1 + a_2\cdot3^2 + \cdots + a_k\cdot3^k
,其中
a_i\in\{ - 1,0,1\}(i = 0,1,2,\cdots,k),a_k\neq0
a_i\in\{ - 1,0,1\}(i = 0,1,2,\cdots,k),a_k\neq0
,记
I(n)
I(n)
为上述表示中,为 0 的个数(例如
8 = (-1)\cdot3^0 + 0\cdot3^1 + 1\cdot3^2
8 = (-1)\cdot3^0 + 0\cdot3^1 + 1\cdot3^2
,则
I(8)=1
I(8)=1
),则下列结论正确的是( )
A.
I(9)=2
I(9)=2

B.
I(3^n - 1)=n - 1
I(3^n - 1)=n - 1

C.
I(9n)=I(n)+2
I(9n)=I(n)+2

D.
I(9n + 4)=I(n)+4
I(9n + 4)=I(n)+4

答案:ABC

解析

首先映入眼帘的就是一股二项式定理的味道,但其实不是,仔细一看是类似三进制的东西,但是数码取值有所不同,这里是

a_i\in\{ - 1,0,1\}
a_i\in\{ - 1,0,1\}
。

似乎并不能立马断言此类n的分解是一一对应的(即平衡三进制数列和十进制整数存在一一映射的关系),因为这与三进制分解的单调性不同。

为此我们似乎需要先证明 “平衡三进制数一一映射(个人记作

∼
∼
)十进制整数”

首先我们可能比较希望与已知的问题做关联,因为我们熟知普通三进制数

∼
∼
十进制整数

因此上述问题等价于“平衡三进制数

∼
∼
普通三进制数”

这个命题有两个方面:

①平衡三进制数

\longrightarrow
\longrightarrow
普通三进制数 是单射

即

任意的平衡三进制数都对应唯一的不同的普通三进制数

这是显然的,因为任意写出的

n = a_0\cdot3^0 + a_1\cdot3^1 + a_2\cdot3^2 + \cdots + a_k\cdot3^k
n = a_0\cdot3^0 + a_1\cdot3^1 + a_2\cdot3^2 + \cdots + a_k\cdot3^k
总能找到唯一的十进制表达。

理解难点在于②

②普通三进制数

\longrightarrow
\longrightarrow
平衡三进制数 是单射

即

任意的普通三进制数都对应唯一的不同的平衡三进制

然而平衡三进制有负数码,这并不直观,为此需要简单证明一下。

证明

任取两个平衡三进制a,b

a = \sum_{i=0}^m a_i \cdot 3^i ,\quad b = \sum_{i=0}^n b_i \cdot 3^i \quad \\
a = \sum_{i=0}^m a_i \cdot 3^i ,\quad b = \sum_{i=0}^n b_i \cdot 3^i \quad \\
 (a_i, b_i \in \{-1, 0, 1\})\\
(a_i, b_i \in \{-1, 0, 1\})\\
分析
a
a
与
b
b
的差值
d
d

 d=\sum_{i=0}^{\max(m,n)} (a_i - b_i) \cdot 3^i  \\
d=\sum_{i=0}^{\max(m,n)} (a_i - b_i) \cdot 3^i \\

记

 d_i = a_i - b_i
d_i = a_i - b_i
,

由上述两个平衡三进制

a
a
,
b
b
任取,

则

d_i
d_i
可任取
\{-2, -1, 0, 1, 2\}
\{-2, -1, 0, 1, 2\}

\sum_{i=0}^{\max(m,n)} (d_i) \cdot 3^i = 0 \\
\sum_{i=0}^{\max(m,n)} (d_i) \cdot 3^i = 0 \\

a - b = 0  \Leftrightarrow d_i = 0 ,i=0,1,2\dots n\\
a - b = 0 \Leftrightarrow d_i = 0 ,i=0,1,2\dots n\\

这里仔细一看发现已经成为一个三进制问题,至少负数码与正数码对称,只是数码存有负不符合我们的认知习惯,我们把

d_i
d_i
为负的部分移到等号右边,使问题更加简单而显然

 \underbrace{\sum_{d_i>0}d_i\cdot3^i}_{\text{正数码部分}} = \underbrace{\sum_{d_j < 0}(-d_j)\cdot3^j}_{\text{负数码正部分}}\\
\underbrace{\sum_{d_i>0}d_i\cdot3^i}_{\text{正数码部分}} = \underbrace{\sum_{d_j < 0}(-d_j)\cdot3^j}_{\text{负数码正部分}}\\

这就变成了两个三进制相等的问题,仔细一看,两个位数不同的三进制相等只能是各位都是0,因此命题得证

为了直观(并不,我懒得画表格了,直接让dpsk生成的)展示该证明过程,可以如此表示正负数码的平衡关系:

原式展开:

 \begin{matrix} \underbrace{  \begin{array}{c|ccccc} \text{位权} & 3^m & \cdots & 3^1 & 3^0 \\ \hline \text{数码} & d_m & \cdots & d_1 & d_0 \\ \text{符号} & \pm & \cdots & \pm & \pm  \end{array} }_{\text{含负数码的三进制表示}} & = & 0  \end{matrix}
\begin{matrix} \underbrace{ \begin{array}{c|ccccc} \text{位权} & 3^m & \cdots & 3^1 & 3^0 \\ \hline \text{数码} & d_m & \cdots & d_1 & d_0 \\ \text{符号} & \pm & \cdots & \pm & \pm \end{array} }_{\text{含负数码的三进制表示}} & = & 0 \end{matrix}

将负数码移到等式右边:

 \begin{matrix} \underbrace{  \begin{array}{c|ccccc} \text{位权} & 3^m & \cdots &3^n & \cdots& 3^1 & 3^0 \\ \hline \text{左式} & d_m & \cdots & \cdots& \cdots & \square\ & \square\ \\ \text{右式} & 0& \cdots &\square\ & \cdots&\square\ &\square\ \end{array}}_{\text{左右式每一数码至少其一为0}} \end{matrix}
\begin{matrix} \underbrace{ \begin{array}{c|ccccc} \text{位权} & 3^m & \cdots &3^n & \cdots& 3^1 & 3^0 \\ \hline \text{左式} & d_m & \cdots & \cdots& \cdots & \square\ & \square\ \\ \text{右式} & 0& \cdots &\square\ & \cdots&\square\ &\square\ \end{array}}_{\text{左右式每一数码至少其一为0}} \end{matrix}


反证法证明(从差值存在非零项推得矛盾)

其实也可以运用反证法分析,最后是余数有关的问题

假设

 a \neq b
a \neq b
,则至少存在某一位
\( d_i \neq 0 \)
\( d_i \neq 0 \)
。设
t
t
是最低位满足
 d_t \neq 0 \
d_t \neq 0 \
的位置(即
\( d_0 = d_1 = \dots = d_{t-1} = 0 \)
\( d_0 = d_1 = \dots = d_{t-1} = 0 \)
,但
d_t \neq 0
d_t \neq 0
)。

此时,等式可分解为:

 d_t \cdot 3^t + \sum_{i=t+1}^k d_i \cdot 3^i = 0
d_t \cdot 3^t + \sum_{i=t+1}^k d_i \cdot 3^i = 0
提取公因子
\( 3^t \)
\( 3^t \)
:

3^t \left( d_t + \sum_{i=t+1}^k d_i \cdot 3^{i-t} \right) = 0
3^t \left( d_t + \sum_{i=t+1}^k d_i \cdot 3^{i-t} \right) = 0

由于

3^t \neq 0
3^t \neq 0
,故:
d_t + 3 \cdot \sum_{i=t+1}^k d_i \cdot 3^{i-t-1} = 0\\
d_t + 3 \cdot \sum_{i=t+1}^k d_i \cdot 3^{i-t-1} = 0\\

令

 M = \sum_{i=t+1}^k d_i \cdot 3^{i-t-1} \\
M = \sum_{i=t+1}^k d_i \cdot 3^{i-t-1} \\
则
d_t = -3M \\
d_t = -3M \\
根据
\( d_t \in \{-2, -1, 0, 1, 2\} \)
\( d_t \in \{-2, -1, 0, 1, 2\} \)
且
\( d_t \neq 0 \)
\( d_t \neq 0 \)
,可能的取值为
 \pm 1, \pm 2
\pm 1, \pm 2
。

但

\( d_t = -3M \)
\( d_t = -3M \)
表明
d_t \
d_t \
必须是
3
3
的倍数(因为
M
M
是整数)

而

\pm 1, \pm 2\
\pm 1, \pm 2\
均不是
3
3
的倍数,矛盾
\square.
\square.

本质

最低非零位差值

\pm1 \cdot 3^t
\pm1 \cdot 3^t
或
\pm2 \cdot 3^t
\pm2 \cdot 3^t
在模
3^{t}
3^{t}
下非零,而更高位差值为
 3^{t}
3^{t}
的整数倍,无法通过线性组合抵消这一非零余数,故唯一性成立。


各选项分析

I(n)
I(n)
为上述表示中,为 0 的个数

A.

I(9)=2
I(9)=2
显然
9 = 1 \cdot 3^2 + 0 \cdot 3^1 + 0 \cdot 3^0
9 = 1 \cdot 3^2 + 0 \cdot 3^1 + 0 \cdot 3^0
,由前证一一映射知等号确无其他分解

B.

I(3^n - 1)=n - 1
I(3^n - 1)=n - 1

 3^n - 1 = 1 \cdot 3^n + (-1) \cdot 3^0 + \underbrace{0 \cdot 3^1 + 0 \cdot 3^2 + \cdots + 0 \cdot 3^{n - 1}}_{n - 1个0} \\
3^n - 1 = 1 \cdot 3^n + (-1) \cdot 3^0 + \underbrace{0 \cdot 3^1 + 0 \cdot 3^2 + \cdots + 0 \cdot 3^{n - 1}}_{n - 1个0} \\

C.

I(9n)=I(n)+2
I(9n)=I(n)+2
9n = n \cdot 3^2
9n = n \cdot 3^2
相当于将
n
n
的表示式中各项的幂次都加
2
2
,则
3^0 \
3^0 \
与
3^1
3^1
位置必为 0 (“移码”)

D.

I(9n + 4)=I(n)+4
I(9n + 4)=I(n)+4
这是在说“左移码”两位后于
3^1
3^1
和
3^0
3^0
分别
+1
+1
,使得操作不改变0的个数,这是不可能的,选项错误


普通三进制向平衡三进制转化的本质是

逐位处理普通三进制的 2 时,递归地将

 2 \cdot 3^k
2 \cdot 3^k
替换为
 1 \cdot 3^{k+1} + (-1) \cdot 3^k
1 \cdot 3^{k+1} + (-1) \cdot 3^k
,使最终所有数码均为
-1, 0, 1
-1, 0, 1


过去考察进制的高考题

2021新高考二卷12题

12. 设正整数
\(n = a_{0}\cdot2^{0}+a_{1}\cdot2 + \cdots + a_{k - 1}\cdot2^{k - 1}+a_{k}\cdot2^{k}\)
\(n = a_{0}\cdot2^{0}+a_{1}\cdot2 + \cdots + a_{k - 1}\cdot2^{k - 1}+a_{k}\cdot2^{k}\)
,其中
\(a_{i}\in\{0,1\}\)
\(a_{i}\in\{0,1\}\)
,记
\omega(n)=a_{0}+a_{1}+\cdots + a_{k}\
\omega(n)=a_{0}+a_{1}+\cdots + a_{k}\
。则( )
A.
\omega(2n)=\omega(n)
\omega(2n)=\omega(n)

B.
\omega(2n + 3)=\omega(n)+1
\omega(2n + 3)=\omega(n)+1

C.
 \omega(8n + 5)=\omega(4n + 3)
\omega(8n + 5)=\omega(4n + 3)

D.
\omega(2^{n}-1)=n\
\omega(2^{n}-1)=n\

答案 ACD

解析

A. 左移码操作 各位和不变

B. 左移码一位之后于

2^1
2^1
位和
2^0
2^0
位
+1
+1
,使得系数和不变,这是不可能的

C. 翻译等号两边操作:

等号左边的操作是左移码三位之后于

2^2
2^2
位和
2^0
2^0
位
+1
+1

等号右边的操作是左移码两位之后于

2^1
2^1
位和
2^0
2^0
位
+1
+1

移码不改变各位数和,且移码后都在值为0的位上+1,各为两次,故相等

D.二进制下做减法,

1\underbrace{00\cdots0}_{n \text{ 个 } }
1\underbrace{00\cdots0}_{n \text{ 个 } }
-1
-1
=
=
\( \underbrace{111\cdots1}_{n\text{个}} \)
\( \underbrace{111\cdots1}_{n\text{个}} \)
正确


收录于知乎专栏「高中数学」· 查看知乎原文