题目
(2005·罗马尼亚) 定义 ∀x∈N∗,p(x) 为 x 各位数字的乘积(例如: p(23)=6,p(110)=0,p(124)=8). 求出所有的 n,使得 10p(n)=n2+4n−2005.
解法
末位筛选
首先,由于 10p(n) 是 10 的倍数,所以 n2+4n 是以 5 结尾的整数. 对于末位为 1∼9的数字,不难发现只有 1,5 满足 n2+4n 以 5 结尾.
下界
不难发现,10p(n)≥0,所以 n2+4n−2005≥0,n≥43.
求值-1
上界
考虑 n∈[100,999] 的情况:
- 左端 ∈[0,729]
- 右端 ≥8395
当 n 更大时,左右差距也更大,所以 n∈[43,99].
计算
分别设 n1=10k+1,n2=10k+5 (不考虑 k 的范围):
- 对于 n1,p(n1)=1⋅k=k,10k=(10k+1)2+4(10k+1)−2025,无解.
- 对于 n2,同理求出 10(5k)=(10k+5)2+4(10k+5)−2025,解得 k=4.
因此,唯一解为 45.
求值-2
特殊性质
在我做出这题的时候,给我题的同学偷偷告诉我:∀x∈N∗,p(x)≤x.
数学归纳法.
我们假设数字 x 有 k 位:
-
k=1,p(x)=x.
-
若k=1 时,p(x)≤x 成立:
令 t=10x+m(m∈[0,9]),也就是 t 是在 x 的末位追加一个 m,
注意到 m<10,p(t)=mp(x)≤10p(x)≤10x≤10x+m≤t.
所以 ∀x∈N∗,p(x)≤x.
根据性质得出上界
根据刚才的性质,n2+4n−2005≤10n,n≤47.
既然 n∈[43,47],说明只有 n=45 可能满足条件.
代入验证,当 n=45 时两端相等,所以 n=45 是唯一解.