[问题解答]有多少位数字?
By 苏剑林 | 2013-02-21 | 16198位读者 |解决完上一题《有多少个5?》后,子瑞表示看到一道类似的题目,当然,这道题比上一道难一些:
一个数,各个数字加起来等于900,乘以2后各个数字加起来还是等于900,已知这个数字只有3、4、5、6组成,请问满足条件的最大数与最小数的积有多少位数?
要解答这个问题,我们只需要知道最大数和最小数分别有多少位即可。因为最大数必然是6...3的形式,而最小数只能是3...6的形式,它们的位数之和就是所求的位数。
怎样比较两个数的大小呢?显然,在不同位数的数时,位数多的数要大,同样位数才从高到低逐位比较。因此,我们应当考虑位数的最大与最小。
设这个数有a个3、b个4、c个5和d个6,由已知条件得:
$$3a+4b+5c+6d=900\tag{1}$$$$6a+8b+c+3d=900\tag{2}$$
并记$s=a+b+c+d$,s就是总位数。要求s的最大值跟最小值。在这里,由于有两个等式,因此变量a、b、c、d只有两个是独立的,并且由于题目本身的限制,它们只能够是正整数。因此本题是一道简单的线性规划以及数论问题。
$(1) \times 2-(2)$得:
$$c+d=100$$
由此得c跟d不是独立的,那么a与b也不是独立的。
$(1)+(2)$得:
$$3a+4b+2c+3d=600$$
即$s=200+\frac{c-b}{3}$
由上述推理得c、b是独立的。因此要求最大的s,不妨试探性取b=1,c=97;代入可以发现存在a=131这个合理的解。那么答案就出来了,最大的s是232.
同理,要求最小的s,不妨试探性地取c=1,那么d=99,代入$3a+4b+2c+3d=600$得到
$$3a+4b=301$$
取最大的b,当a=3时,b=73;再代入$s=200+\frac{c-b}{3}$,正好得到整数s=176.
我们有理由相信,最小的s就是176了。当然,如果你还不放心,可以试探性取c=2,看看得到的结果如何?也不必取到c=3、4等等去试探了,因为整体来讲,c的增大会导致b的减少,这样一来,c-b反而变大了。
因此我们知道最终答案就是:232+176=408!一开始题目所求的位数!
转载到请包括本文地址:https://kexue.fm/archives/1922
更详细的转载事宜请参考:《科学空间FAQ》
如果您还有什么疑惑或建议,欢迎在下方评论区继续讨论。
如果您觉得本文还不错,欢迎分享/打赏本文。打赏并非要从中获得收益,而是希望知道科学空间获得了多少读者的真心关注。当然,如果你无视它,也不会影响你的阅读。再次表示欢迎和感谢!
如果您需要引用本文,请参考:
苏剑林. (Feb. 21, 2013). 《[问题解答]有多少位数字? 》[Blog post]. Retrieved from https://kexue.fm/archives/1922
@online{kexuefm-1922,
title={[问题解答]有多少位数字?},
author={苏剑林},
year={2013},
month={Feb},
url={\url{https://kexue.fm/archives/1922}},
}
最近评论