问题:

有12个小球,其中有一个的质量与其它小球不同。有一个天平,但没有砝码。将这12个小球在这个天平上称3次,得到质量不同的那个小球。

思路:

对于这个问题,我们无法知道,那个质量不同的小球相比其它的小球,质量是轻了,还是重了。这也是这个问题的一个难点。但是,从天平上,如果两边的小球质量不同,则天平不会平衡。我们首先将范围缩小。如果对于3个小球,如果有一个质量不同,则需要称2次才能发现那个质量不同的球。如果,事先,我们已经知道那个质量不同的小球比其它的小球轻了或者重了,则只需要称1次就可发现那个质量不同的小球。这个问题的基本思路也是如此。对于本题,笔者有两个解法。

解法1:

  1. 将12个小球分成3组,每一组为4个小球。比如球1-4在组A,球5-8在组B,球9-12在组C。
  2. 将组A与组B放到天平上称。如果质量相同,则跳转到第3步;如果不同,则跳转到7步。
  3. 如果,组A与组B质量相同,则说明质量不同的小球在组C。从组C中取两个小球,如球9与球10。
  4. 将球9与球10放到天平上称。如果球9与球10质量相同,跳转到第5步;如果不同,跳转到第6步。
  5. 球9与球10质量相同,则说明球11与球12中,有一个球的质量与其它的球不同。取球11与组A或者组B中任一小球称。如果相同,则说明球12的质量不同;如果不同,则说明球11的质量不同。至此,共称3次,发现了质量不同的小球。
  6. 球9与球10质量不同,则说明球9与球10中,有一个球的质量与其它的球不同。取球9与组A或者组B中任一小球称。如果相同,则说明球10的质量不同;如果不同,则说明球9的质量不同。至此,共称3次,发现了质量不同的小球。
  7. 组A与组B的质量不同,则说明在组A与组B中有一个小球与其它的小球质量不同。假设,称的结果为组A比组B重。将球1、3、5设为组A1,球2、4、6设为组B1,再次放到天平上称。
  8. 如果,组A1比组B1重,则说明球1或者球3重,或者球6轻。将球1与球3放到天平上称。如果球1比球3重,则说明球1为质量不同的小球。如果球1比球3轻,则说明球3为质量不同的小球。如果相同,则说明球6为质量不同的小球。至此,共称3次,发现了质量不同的小球。
  9. 如果,组A1比组B1轻,则说明球5轻,或者,球2或球4重。将球2与球4放在天平上称。如果球2比球4重,则说明球2为质量不同的小球。如果球2比球4轻,则说明球4为质量不同的小于。说果相同,则说明球5为质量不同的小球。至此,共称3次,发现了质量不同的小球。
  10. 如果,组A1与组B1的质量相同,则说明球7或者球8中,有一个球的质量轻了。将球7与球8放在天平上。如果球7轻,则球7为质量不同的小球。如果球8轻,则说明球8为质量不同的小球。至此,共称3次,发现了质量不同的小球。

解法2:

  1. 与前一种方法的开始相同。将12个小球分成3组,每一组为4个小球。比如球1-4在组A,球5-8在组B,球9-12在组C。
  2. 将组A与组B放到天平上称。如果质量相同,则跳转到第3步;如果不同,则跳转到7步。
  3. 如果,组A与组B质量相同,则说明质量不同的小球在组C。从组C中取两个小球,如球9与球10。
  4. 将球9与球10放到天平上称。如果球9与球10质量相同,跳转到第5步;如果不同,跳转到第6步。
  5. 球9与球10质量相同,则说明球11与球12中,有一个球的质量与其它的球不同。取球11与组A或者组B中任一小球称。如果相同,则说明球12的质量不同;如果不同,则说明球11的质量不同。至此,共称3次,发现了质量不同的小球。
  6. 球9与球10质量不同,则说明球9与球10中,有一个球的质量与其它的球不同。取球9与组A或者组B中任一小球称。如果相同,则说明球10的质量不同;如果不同,则说明球9的质量不同。至此,共称3次,发现了质量不同的小球。
  7. 组A与组B的质量不同,则说明在组A与组B中有一个小球与其它的小球质量不同。假设,称的结果为组A比组B重。将球1、5、6、7设为组A1,将球8与组C中任取3球设为组B1。再次放在天平上称。
  8. 如果,组A1比组B1重,则说明球1重,或者球8轻。将球1与组C中任一球称,如果球1相对更重,则说明球1为质量不同的小球。如果相同,则说明球8为质量不同的小球。至此,共称3次,发现了质量不同的小球。
  9. 如果,组A1比组B1轻,则说明球5、6、7中有一个球轻。取球5与球6在天平上称。如果球5比球6轻,则说明球5为质量不同的小球。如果球5比球6重,则说明球6为质量不同的小球。如果相同,则说明球7为质量不同的小球。至此,共称3次,发现了质量不同的小球。
  10. 如果,组A1与组B1一样重,则说明球2、3、4中有一个球重。取球2与球3在天平上称。如果球2比球3重,则说明球2为质量不同的小球。如果球2比球3轻,则说明球3为质量不同的小球。如果相等,则说明球4为质量不同的小球。至此,共称3次,发现了质量不同的小球。

本博客中所有的博文都为笔者(Jairus Chan)原创。

如需转载,请标明出处:http://blog.csdn.net/JairusChan。

如果您对本文有任何的意见与建议,请联系笔者(JairusChan)。

12个小球称3次得到质量不同的那个小球相关推荐

  1. matlab最小字典序,12小球称重问题 完美解决方案(转自 skywind.name)

    网上 有好几种 解决方案,skywind.name上的这个最棒, 赞一下! 可惜 偶 苦思冥想 3 个小时,思路换了3.4种,也没找到完美解决方案. 以下 是 转自 skywind.name 12个小 ...

  2. 小球称重的解法整合 N个小球有一个坏球,最少几次能找出坏球

    小球称重的解法整合 N个小球有一个坏球,最少几次能找出坏球     最近在看小球称重的问题,之前只记住了公式,最近回过来看,发现知乎上多了一些优质答案,遂记录一下. 现附上学习地址 先说结论, N 个 ...

  3. python小球方案问题_十二个小球称重问题及其Python实现

    一.问题描述 在12个外观完全相同的小球中,有一个与其它球重量不同.如何只用一架天平找到这个球并判断它比其它球轻还是重?最少需要称几次?39个球呢? 二.问题分析 这是一个很经典的信息论问题,最开始的 ...

  4. 十二个小球称重问题及其Python实现

    一.问题描述   在12个外观完全相同的小球中,有一个与其它球重量不同.如何只用一架天平找到这个球并判断它比其它球轻还是重?最少需要称几次?39个球呢? 二.问题分析   这是一个很经典的信息论问题, ...

  5. 小球吃金币unity教程_Unity实验一 ---吃小球游戏

    一.实验概述 1.1实验名称: Roll a ball 1.2实验目的: 本次实验的总的目的是通过具体的程序的编写与unity软件相结合,将所学的知识内化,即将在课堂上学到的知识集成在一起,并实现相关 ...

  6. 12个球,其中有一个质量不一样的小球,一个天平,称三次,找到这个质量不一样的小球。

    [解答1] 首先你得告诉我一个前提,这个球是比其他重还是比其他轻,现在假设它比其他球重. 过程如下: 第一次,把十二颗球分为两堆,天平左右各六颗,天平重的那边拿出来. 第二次,把天平重的那边六个球再分 ...

  7. 12球称重C语言算法,12小球称重问题

    题目: 已知有12个小球,一样的形状和外观,其中有一个是次品,现在给你一个无砝码的天平,称三次, 把这个次品找出来,并且求出这个次品相对真品是偏重还是偏轻? 解答: 首先把小球分成三堆,每堆四个. A ...

  8. 库克第12次访华 称曾经对手腾讯为伟大的合作伙伴

    12月3日,美国苹果公司首席执行官蒂姆·库克在第四届世界互联网大会开幕式上准备发表演讲.新京报记者 李冬 摄 12月7日,刚刚参加完乌镇互联网大会,苹果公司首席执行官蒂姆·库克现身中国广州2017全球 ...

  9. 12个乒乓球称重问题

    问题: 有12个乒乓球,其中有一个次品,不知道轻重,用一台无砝码天平称三次,找出次品并告知轻重,怎么称? 解答: 先分3组,每组4个,随便拿两组来称第一次: 情况1:天平平衡, 则在剩下的4个球里,从 ...

最新文章

  1. 饿了么外卖商家版电脑版_为什么有些美团、饿了么外卖商家生意那么好,单子也不少,但是却倒闭了?...
  2. 【Windows10下OpenCV 3.4.0 + Visual Studio 2015开发环境的配】
  3. 转载:IBM红米连接wifi的方法
  4. 360网络修复工具_Win10网络图标不见了解决方法
  5. 黑马C++设计模式2
  6. vim QuickFix 窗口
  7. Mac idea中git igenore设置
  8. Ext3.2 beta版已发布
  9. ERROR: Invalid requirement: ‘_libgcc_mutex=0.1=main‘ XXX Hint: = is not a valid operator. Did you me
  10. Spring 学习笔记---Bean的生命周期
  11. HTTP与HTTPS之间的联系与连接状态
  12. 使用AVPlayer+AFNetworking封装一个带有缓存逻辑的音频播放器
  13. PS 抠图如何使用通道法处理头发
  14. 域名申请/ssl证书申请
  15. 物联网应用技术和计算机应用技术,物联网应用技术专业介绍
  16. js pug 代码_Pug 代码 Code
  17. ionic ion-refresher 下拉刷新的使用。
  18. Java file outside of source root
  19. 单击即可提高游戏速度:什么是可调整大小的BAR?
  20. 腾讯云服务器评测:配置 8核 16G 18M 带宽

热门文章

  1. 想要成为优秀外贸业务员,必须养成的九个好习惯
  2. Air系列电脑所存在的毛病
  3. 1553B基础常识篇
  4. git rm操作后文件恢复
  5. com.baomidou.mybatisplus.autoconfigure.IdentifierGeneratorAutoConfiguration$InetUtilsAutoConfig.iden
  6. 数控编程球面计算机,基于UG NX的非球面镜片五轴数控编程技术
  7. Power BI——Filter函数
  8. php phantomjs 截屏,phantomjs截图
  9. 写的一个简易评委打分系统(内含详细注释)
  10. java写helloworld_Java编写的第一个程序:HelloWorld