天平稱重問題
本文研究兩個問題:
1、用n個砝碼,最多能稱出多少種不同的重量?
2、1克到Y克的所有重量,最少要幾個砝碼才能稱出?怎樣設計這些砝碼?
分兩種情況:一是砝碼和重物不能放在同一個盤中;二是砝碼和重物可以放在同一個盤中。
先探讨第一種情況,砝碼和重物不能放在同一個盤中時,問題的解:
1、用n個砝碼,最多能稱出多少種不同的重量?
既是砝碼和重物不能放在同一個盤中,就是天平的一邊放重物,另一邊放砝碼,那麼,每個砝碼都有放在盤中與放在盤外兩種擺放法。根據乘法原理,n個砝碼就有2n種擺放法。去掉稱量0克重物(砝碼都放在盤外)的一種擺放法,這n個砝碼有2n-1種不同擺放法。若要達到稱出最多種不同重量的
目的,也就是每種不同的擺法對應一種不同的重量,這n個砝碼還得滿足兩個條件:一是每個砝碼的重量互不相等,二是其中任一個的重量都不等于其它兩個或幾個砝碼的重量的和。這樣的n個砝碼最多能稱出2n-1種不同重量。
若砝碼和重物不能放在同一個盤中,用n個互不相等的且其中任一個都不等于其它兩個或幾個重量的和的砝碼,最多能稱出2n-1種不同的重量。
如:4個這樣的砝碼最多能稱出(24-1=)15種不同重量。
3個這樣的砝碼最多能稱出(23-1=)7種不同重量。
更深入的探讨:
因為每個砝碼有兩種擺法,所以,運用二進制知識來進行研究會有新發現。
把十進制數Y表示成n位二進制數是
Y=[Cn-1······C2C1C0]2=C0+2C1+4C2+······+2n-1Cn-1
讓每一個數位代表一個砝碼,其中C0、C1、C2······Cn-1
取值為0或1,分别表示砝碼放在盤外或放在盤内。由此可知,若把砝碼設計成1克、2克、4克······2n-1克,用n個這樣的砝碼可以稱出1克到2n-1克的所有重量。
一般的,若砝碼和重物不能放在同一個盤中,用重量為1克、2克、22
克······2n-1克的n個砝碼,可以稱出從1克到2n-1克的所有重量。
比如:用1克、2克、4克3個砝碼可稱出1克到(23-1=)7克的所有重量。
用1克、2克、4克、8克4個砝碼可稱出1克到(24-1=)15克的所有重量。
2、1克到Y克的所有重量,最少要幾個砝碼才能稱出?怎樣設計這些砝碼?
由問題1的研究可知,隻要把十進制數Y表示成n位二進制數,得出n的值,就知道最少要用多少個(n個)砝碼才能稱出從1克到Y克的所有重量。
這些砝碼可設計為1克、2克、4克······2n-1克。
比如:1克到31克的所有重量,最少要幾個砝碼才能稱出?怎樣設計這些砝碼?1克到34克呢?
因為31=[11111]2,是個5位二進制數,所以,最少要用5個砝碼才可以稱出從1克到31克的所有重量。
這些砝碼可設計為1克、21克=2克、22克=4克、23克=8克、25-1克=16克。
34=[100010]2,是個6位二進制數,所以最少用6個砝碼才可以稱出1克到34克的所有重量。
這些砝碼是1克、21克=2克,22克=4克、23克=8克、24克=16克、26-1克=32克。
探讨第二種情況,砝碼和重物可以放在同一個盤中時,問題的解:
1、用n個砝碼,最多能稱出多少種不同的重量?
要達到稱出最多種重量的目的,砝碼得滿足兩個條件:一是每個砝碼的重量互不相等;二是其中任一個的重量都不等于其它兩個或幾個砝碼的重量的和或差。砝碼和重物可以放在同一個盤中,就是說每個砝碼都有放在天平左邊的盤中、右邊的盤中、天平外邊三種不同的擺法。根據乘法原理,n個砝碼就有3n種不同的擺法。除去稱量0克重物(這時砝碼都放在盤外)這一種擺法,n個砝碼還有3n-1種有效的不同擺法。因為天平是對稱的,把天平左右兩邊放置的砝碼和重物對換,這兩種擺法對應的是同一種重量,可知每兩種擺法對應一種同樣的重量。就是說這n個砝碼最多能稱量出1/2(3n-1)種不同的重量。
若砝碼和重物可以放在同一個盤中,用n個互不相等的且其中任一個的重量都不等于其它兩個或幾個砝碼的重量的和或差的砝碼,最多可以稱量出1/2(3n-1)種不同的重量。
比如:3個這樣的砝碼能稱出[1/2(33-1)=]13種不同的重量。
因為每個砝碼都有三種不同的擺法,所以可用三進制知識來進行更深入的研究。
把十進制數Y表示成n位三進制數是
Y=[Cn-1······C2C1C0]3=C0+31C1+32C2+······+3n-1Cn
-1
讓每一個數位代表一個砝碼,根據需要作點改變,引進個負餘數,讓其中C0、C1、C2······Cn-1取值不再是0、1、2,而記成-1、0、1,就是當餘數是2時,用負餘數表示,特記作-1。比如5÷3=1······2,現在不這樣記,而記成5÷3=2······(-1)。再賦予-1、0、1新的含義,分别表示砝碼與重物放在一起、放在盤外、放在重物的另一端。由此可知,隻要把砝碼設計成1克、31克、32克、······3n-1克,這樣的n個砝碼就能稱出從1克到1/2(3n-1)克的所有重物。
一般的,若砝碼和重物可以放在同一個盤中,用1克、3克、32克······3n-1克的n個砝碼,可以稱量出從1克到1/2(3n-1)克的所有重量。
下面來證明上面這個命題的正确性。
①當n=1時,隻一個砝碼1克,也就隻能稱量出1克的重量,這時
1/2(3n-1)=1/2(31-1)=1,原命題成立。
②假設n=k(k≥1,k是自然數)時原命題成立,就是
若砝碼和重物可以放在同一個盤中,用1克、3克、32克······3k-1克的k個砝碼,可以稱量出從1克到1/2(3k-1)克的所有重量。
若要稱量1/2(3k-1)+1克的重量,增加一個砝碼3k克,由
3k-1/2(3k-1)=1/2(3k-1)+1,可稱出。
再由3k分别減去1/2(3k-1)-1、1/2(3k-1)-2……2、1、0,就可稱出從1/2(3k-1)+2克到3k克的所有重量。
又由3k分别加上1克、2克……1/2(3k-1)克,就可稱出從3k+1克到3k+1/2(3k-1)=1/2(3k+1-1)克的所有重量。
就是當n=k+1(k≥1,k是自然數)時,用1克、3克、32克······3k-1克、3k克的k+1個砝碼,可以稱量出從1克到1/2(3k+1-1)克的所有重量。
原命題成立。
綜合①②,對一切自然數n(n≥1,n是自然數)原命題都成立。
應用:
如:用1克、3克、9克這3個砝碼,可稱出從1克到[1/2(33-1)=]13克的所有重量;
用1克、3克、9克、27克這4個砝碼,可稱出從1克到[1/2(34-1)=]40克的所有重量。
2、1克到Y克的所有重量,最少要幾個砝碼才能稱出?怎樣設計這些砝碼?
隻要把十進制數Y表示成n位三進制數(餘數用-1、0、1表示),得出n的值,就知道最少用多少個(n個)砝碼就能稱出從1克到Y克的所有重量。
這些砝碼可設計為1克、3克、9克······3n-1克。
比如:若砝碼和重物可以放在一起,要稱量從1克到15克的所有重量,最少要幾個砝碼?怎樣設計這些砝碼?若是從1克到121克呢?
15=[1(-1)(-1)0]3,是個4位數,所以最少要用4個砝碼,這些砝碼是1克、31克=3克、32克=9克、34-1克=27克。
121=[11111]3,是個5位數,所以最少要用5個砝碼,這些砝碼是1克、31克=3克、32克=9克、33克=27克、35-1克=81克。
有話要說...