六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 63|回复: 0

解梅式砝码问题

[复制链接]

升级  13.33%

16

主题

16

主题

16

主题

秀才

Rank: 2

积分
70
 楼主| 发表于 2013-1-27 04:43:35 | 显示全部楼层 |阅读模式
原题:
 
法国数学家梅齐亚克在他著名的《数字组合游戏》(1962)中提出了一个问题:一位商人有一个重40磅的砝码,一天不小心将砝码摔成了四块。后来商人称得每块的重量都是整磅数,而且发现这四块碎片可以在天平上称1至40磅之间的任意重量。请问这四块碎片各重多少?
 
我的解:
 
显然我们可以有如下合理的假设:
 
这四块的重量分别:a,b,c,d;且有:1<=a<=b<=c<=d<=37。(a,b,c,d都是整数)
 
因为这四个碎片可以称得1到40中的任意重量,则可以得到a=1,否则39就没法称了。
 
39=b+c+d
38=b+c+d-a
 
另外,d<30,否则,10到20间的数表示不了。
 
所以有式子: 1=a,  b<=c<=d<=29
 
我的解法就是此数类推得到最后一种可能:1 3 9 27
 
不过由此我倒是得出了一个数学结论:
 
有数a[1] a[2] ...a[n],它们是从小到大排列的整数,且a[1]=1,有a[i+1] = 2(a[1]+...+a)+1,则:这组数总是存在一个组合,可以表示从1到(a[1]+...+a[n])中的任意一个整数,其中组合中的每个数的系数只能是0,1或-1,即数最多可被使用一次。
 
这里给出一个小小的证明:
 
1,显示这组数可以表示1,有a[1]=1
2,假如一直到数K都可以被表示,其中1<=K<a[1]+...+a[n],且有
     K = c1 *a[1]+...+cn*a[n],其中 (c1...cn是0,-1,1中的一个数)
 
     则对于K+1有:
     K +1 = c1 *a[1]+...+cn*a[n] + 1
              = c1 *a[1]+...+cn*a[n] + a[1]
              = (c1+1)*a[1]+...+cn*a[n]
 
    i. 这里分情况讨论了,当c1=0或-1的时候,结论成立,得证
    ii.当c1 = 1的时候,则
     
      K+1 = 2a[1] +c2*a[2]+ ...+ cn*a[n]
              = (a[2] -1)+c2*a[2] +...+cn*a[n]
              = -a[1] + (c2+1)*a[2] + ... + cn*a[n]
 
     按a[1]的方式对a[2]进行讨论,否则以此类推。
    
     因为K<a[1]+...+a[n],则c1...cn中必有数为0或者-1,假如第ci为0或-1
  
     则可以得到 K+1 = -a[1] - a[2] -...-a[i-1] + ci'*a + ...+ cn*a[n]
     其中ci'=0或1。此时表达式符合题设要求。结果得证
 
 
      
      
   
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表