三进制与一道经典的砝码问题

转载 2012年03月28日 14:29:58

 

现在我们普遍使用十进位制进行数学运算,大概是源于我们的祖先喜欢用手指来计数,毕竟数学首先是一种实用的工具。另一种常使用的进位制是二进位制,在计算机运算之中。

日常生活中好像没有三进制的立足之处。1个季度是3个月,应是三进位制,可是我们说1年是4个季度,而不是11个季度。交通信号的红绿黄的三种状态可以表示0、1、2来描述,这似乎与三进制沾上了边,可是最近红绿黄灯多变成了红绿灯,三进制变成了二进制。

虽然在日常生活中少有表现的机会,但是用三进位制就非常容易解决一道关于砝码的经典趣味数学题。

这道砝码问题是巴协(Bachet)给出的:要想在天平上称出1到40磅在内的任何整磅数,问最少需要几个多重的砝码?这里有两种放置砝码的办法:(1)所有砝码只放进天平的一端,(2)砝码可以放进天平的两端。

对于(1),砝码具有两种状态,不放或者放。记不放为0,放为1,这个问题可以使用二进制来解决。二进制的砝码重量设置为1、2、4、8、16、32。在1到1+2+4+8+16+32也就是63之内的任何数量都可以用1、2、4、8、16、32中的某几个数相加得到。所以问题(1)的砝码数是6个,每个砝码的重量设置为1、2、4、8、16、32磅。

对于(2),砝码具有三种状态,不放、放在天平左端、放在天平右端。记不放为0,放左边为1,放右边为-1,这个问题可以使用三进制来解决。在三进制中,砝码的重量设置为1、3、9、27.。在1到1+3+9+27也就是40之内的任何数量都可以用1、3、9、27中的某几个数相加或者相减获得。

我们来看这几个砝码是如何称量1到40的:

 

1=1;2=3-1;3=3 ;4=3+1;5=9-3-1 ;6=9-3 ;    

7=9-3+1;8=9-1 ;9=9  ;10=9+1 ;11=9+3-1

……

35=27+9-1; 36=27+9;37=27+9+1

38=27+9+3-1;39=27+9+3;40=27+9+3+1

 

这里,加号意味着天平左边放置砝码,减号意味着天平右边放置砝码(与被称重的物体放在同一端)。

如果我们增加两个砝码81磅和243磅,用6个砝码可以就称重1到364磅的重量。如果砝码继续按3的幂次增加重量,则称重的范围越来越大。用重量为1、3^2、3^3、……、3^n的n个砝码可以称出从1到(3^n-1)/2的所有重量。

问题是,如果一个被称物体较重,我们该如何在天平两端放置砝码呢?这里涉及到十进制向三进制的计算。像十进制转化为二进制一样,转化方法就是连续的除法运算(这里不打算详细介绍)。

例如,(80)10=(2222)3

等式右边的含义是,80可以用2个1、2个3、2个9、2个27相加而成。

在天平称重中,我们要的是最少的砝码数,我们可以把2变成(10-1)3(简记为-1),也就是说,一个大一级的砝码减去一个小一级的砝码。大砝码放在天平左端,小砝码和被称重物一同放在天平右端。

因为,(2222)3=(1000-1)         ,该式的含义就是用2个1、2个3、2个9、2个27加成的得数等于用1个81减去1的得数。

所以,要称重80磅的物体,需要在天平左边放置1个81磅的砝码,在天平右边放置一个1磅的砝码。

又例如,如果我们用最少的砝码称出了一个331磅的东西,我们究竟用了哪几个砝码呢?

因为(331)10=(110021)3=(1101-11)3

所以,要称重331磅的物体,需要在天平左边放置1个243磅的砝码、1个81磅的砝码、1个9磅的砝码、1个1磅的砝码,在天平右边放置一个3磅的砝码。

因为每一次称量能区别3个球,将12表示为三进制。

在文章的最后,我们把巴协(Bachet)的砝码问题稍稍扩大一些:要想在天平上称出1到500磅在内的任何整磅数,问最少需要几个多重的砝码?这里有两种放置砝码的办法:(1)所有砝码只放进天平的一端,(2)砝码可以放进天平的两端。

相关文章推荐

三进制与一道经典的砝码问题

转自:http://blog.sina.com.cn/s/blog_41482c9f01009an5.html 三进制与一道经典的砝码问题   现在我们普遍使用十进位制进行数学运算,大概...
  • hcwzq
  • hcwzq
  • 2011年09月12日 11:19
  • 534

三进制解决天平平衡问题

问题:已知有20个质量分别为1,3,9,27,...3^19的砝码;开始物体放在天平左边的托盘中,通过在左盘和右盘添加砝码使天平达到平衡。要求左边不放砝码时,输出empty,否则输入两盘所加的砝码。例...

光的三进制逻辑运算与光学加密

  • 2013年12月15日 21:25
  • 2.18MB
  • 下载

hdu3001 Travelling(TSP+三进制)

题目链接:点这里!!! 题意: 给你n(n 题解: 你可以可以利用三进制表示这个点你经过了几次,在加上基础的TSP就可以解决了!!! 代码: #include #i...

二进制与三进制的故事

先来思考几个问题,并不难,各位大牛应能秒杀: 1. 小明是个卖苹果的,小红一次在小明那买N(N 2. 有16种溶液,其中有且只有一种是有毒的,这种有毒的溶液与另一种...

HDU 3209 Scales(模拟三进制运算)

Problem Description Give you a scale, a goods weigts m kilograms. And then give you some stones wei...

Hdu 3301 Travelling 状态压缩(三进制)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3001 题目大意:给你n个城市,

Codeforces Beta Round #97 (Div. 2) (三进制)

B. Ternary Logic time limit per test 2 seconds memory limit per test 256 megabytes ...
  • Tsaid
  • Tsaid
  • 2011年12月10日 23:10
  • 562

hdu3001(三进制状态压缩DP)

这题和TSP(旅行售货员问题)本质区别是每个地方可以访问两下,而TSP只能访问一次,一开始题目读错了,用搜索来做结果wa了 后来看了解题,这个问题要用状态压缩来解...

hdu3001 Travelling 三进制状态压缩

题意: Mr.Acmer 希望能走遍所有的城市,但他不会进入一个城市超过两次。 每次从一个城市到另一个城市需要一定的消耗,求他总共最少的消耗量。如果他不能在条件允许下走遍所有城市则输出-1。 由数据...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:三进制与一道经典的砝码问题
举报原因:
原因补充:

(最多只允许输入30个字)