珠宝商甲须要去鉴定一批41克如下的宝石(多是41克如下不包括41克的任意重量),他只能携带一个天平和四个砝码去称重,请问他会携带那些重量的砝码?html
2014腾讯暑期实习生附加题第一题算法
这道题的本质应该是这样,用4个数来表示1-40.刚开是个人思路是使用二进制,可是二进制显然是不够的.net
2^4 = 16htm
因此,考试的时候没有作上来,智商捉急。今天搜索了一下答案,参考了cnblog上一篇文章下的评论撰写把本文。blog
采用三进制,即ci
3^4 = 81get
因此进一步地,就是解决如何用4位3进制数来表示40这个数,即博客
40/3 = 13---1
13/3 = 4---1
4/3 = 1---1
1/3 = 0---1数学
三进制表示为1111,即it
1*3^3+1*3^2+1*3^1+1*3^0 = 27+9+3+1
因此这四个砝码的重量为27,9,3和1
评论下的某位大神用C++把算法写出来了。
在百度知道上看到的,这是德梅齐里亚克砝码问题
原题是这样的,摘自百度百科
一位商人有一个40磅的砝码,因为跌落在地而碎成4块.后来,称得每块碎片的重量都是整磅数,并且能够用这4块来称从1至40磅之间的任意整数磅的重物.
问这4块砝码碎片各重多少?
法国数学家G.B.德·梅齐里亚克(1581一1638)在他的著做中解答了这题. 为使两砝码A与B能称出最多种重量,必须是1磅和3磅,用它们能称出一、二、三、4磅的重物。如选第三块砝码C的重量为2x4+1=9磅,则用它们可称出1至9+4=13磅间的全部整数磅重物。最后选第四块砝码D,使它重量为2x13+1=27磅,那么用这四块砝码能称出从1至27+13=40磅的重物.所以,这四块砝码的重量分别为一、三、九、27磅。
更详细的关于德梅齐里亚克砝码问题,仍是看CSDN这篇博客,很详细。
其实这就是德梅齐里亚克砝码所带来的整数最优拆分法,用1和3能够构造一切有理数。
公式
X=M*2+1
其中X为M的后一项数,M为X前全部项的和。初值M为1,那么日后推论就能够推出任意的数值,即
M=1
M = 1, X = 3
M = 1 + 3, X = 9
M = 1 + 3 + 9, X = 27
M = 1 + 3 + 9 + 27, X = 81
M = 1 + 3 + 9 + 27 + 81, X = 243
发现这就是3的各次幂序列
3^0, 3^1, 3^2, 3^3, 3^4, 3^5......
世界上最完美的砝码组合---神秘的“3”重现江湖!这篇文章讲的更为透彻。原文里有这么句话让我对老子,对道家,对中华文化的博大精深所折服。
全是数字“3”的各次幂…神奇而又神秘的“3”再次出现!
让人不由自主地又一次想起“三生万物”!
说句老实话,有多少人在研究老子道德经,就是没法对老子的这句话完全理解明白:
“道生一,一辈子二,二生三,三生万物”
道生一,一辈子二,二生三,三生万物