13 Balls Problem
今天讨论的是称球问题.
No.3 13 balls problem
You are given 13 balls. The odd ball may be either heavier or lighter. Find out the odd ball in 3 weightings.
分析与解答:
看到这道题,就想起来高中时候数学老师的一句话;“真正难的题不是那些很长的题,而是那些就几句话的题!!!”现在想想真是良训啊。又想到很多老师的话,感觉到失去方显弥足珍贵的名言,不禁唏嘘啊……
有人认为这道题是“One of the Hardest Interview Questions”,我认为是有道理的。学过信息论的人应该知道,这也是信息论中谈及信息量(熵)时的命题。它同时也反映了数据挖掘和充分利用信息量的重要性。对同样的数据,别人就是能挖掘出你得不到的信息。这就是信息时代“信息不对称”的深层表现。在获取同样数据量的情况下,怎样才能做到获得的信息量比别人多?沉思中……
算了算了,还是先给出方案吧:
Step 1. 将这13个球分为3组,分别标号为:A1,A2,A3,A4;B1,B2,B3,B4;C1,C2,C3,C4,C5。
Step 2.(第一次称量) 比较A组和B组的重量。如果A、B组的重量相等,则确认异常球在C组。如果A、B组的重量不一样,则确认异常球在A组或B组。下面开始分两种情况讨论:
情况1. 异常球在C组
Step 3. (第二次称量)从C组中取出三个球(定为C1、C2、C3),并从A、B组中任取一个球,一共四个球一边两个放在天平上。(第三次称量)如果天平平衡,则异常球在C组剩下的两个球(C4、C5)中,这时只需将其中任意一个球与A、B组中的任一个球相比就能确定那个球是异常球,这个异常球是轻了还是重了。如果天平不平衡,那么我们知道异常球在C1、C2、C3中。进一步我们假设,天平的称重情况为:C1,N > C2,C2(小于的情况同理讨论),这样的话,我们可以进一步确认C1、C2、C3的情况为C1偏重或者C2偏轻或者C3偏轻。这样,我们后面就把C1、C2与两个正常球N、N相比较。如果C1、C2 > N、N ,则C1是异常球,且偏重;如果C1、C2 < N、N,则C2是异常球,且偏轻;如果C1、C2 = N、N,则C3是异常球,且偏轻。
情况2. 异常球在A、B组
Step 3. 不妨假设A1、A2、A3、A4 > B1、B2、B3、B4(小于的情况同样讨论)。那么我们首先得到信息:要么A组中有个球偏重、要么B组中有个球偏轻。(第二次称量)下面我们从A组中取出三个球,从B组中取出三个球。然后,我们分别在天平两边这样放:一边是A1、A2、B1,一边是A3、A4、B2。我们称称看。(第三次称量)如果 A1、A2、B1 > A3、A4、B2那么我们可以判定或是A1偏重或是A2偏重或是B2偏轻;如果A1、A2、B1 < A3、A4、B2那么我们可以判定或是A3偏重或是A4偏重或是B1偏轻;如果天平平衡,则判定B3偏轻或是B4偏轻。下一步的做法,就不用我多说了吧,方法与情况1中的最后一步一样。
至此,我们给出了本题的方案。12(or 13) balls problem是信息论的名题。在Thomas M Cover的经典著作《信息论基础》(Element of information )中就作为习题出现。其实,我们进行方案设计的基本理念用信息论的行话来讲就是:怎样使每次称量获得的信息量最大。具体是怎样把信息论和本题联系起来的呢,看到网上有一篇文章Robert H.Thouless 的The 12-Balls Problem as an Illustration of the Application of Information Theory。不过我没有查到电子版,有的同学记得给一份我啊,也学习学习,呵呵。
13 Balls Problem的更多相关文章
- BZOJ 1770: [Usaco2009 Nov]lights 燈
Description 一个图,对一个点进行操作会改变这个点及其相邻的点的状态,问全部变成黑色至少需要几次.数据保证有解. Sol Meet in middle. 我一开始写个高斯消元,发现有两个点过 ...
- [GodLove]Wine93 Tarining Round #4
比赛链接: http://acm.hust.edu.cn/vjudge/contest/view.action?cid=44903#overview 题目来源: 2011 Asia ChengDu R ...
- [SharePoint] SharePoint 错误集 2
1 Run command “New-SPConfigurationDatabase" Feature Description: error message popup after run ...
- SharePoint 2013 – Workflow Manager 1.0 offline download
[http://sharepointdeal.wordpress.com/2013/03/13/sharepoint-2013-workflow-manager-1-0-offline-downloa ...
- 三部曲二(基本算法、动态规划、搜索)-1006-The Same Game
The Same Game Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 4585 Accepted: 1699 Des ...
- URAL 1076 Trash Trash(最大权匹配)
Trash Time limit: 1.0 secondMemory limit: 64 MB You were just hired as CEO of the local junkyard.One ...
- URAL 2030 Awesome Backup System
Awesome Backup System Time limit: 2.0 secondMemory limit: 64 MB It is known that all people can be d ...
- [kuangbin带你飞]专题二十 斜率DP
ID Origin Title 20 / 60 Problem A HDU 3507 Print Article 13 / 19 Problem B HDU 2829 Lawr ...
- [kuangbin带你飞]专题十四 数论基础
ID Origin Title 111 / 423 Problem A LightOJ 1370 Bi-shoe and Phi-shoe 21 / 74 Problem B ...
随机推荐
- <<Numerical Analysis>>笔记
2ed, by Timothy Sauer DEFINITION 1.3A solution is correct within p decimal places if the error is l ...
- ios7 tableview scrollsToTop 不执行处理方法
ios7中调用[self.tableview scrollsToTop] 没有效果(ios8中也没有效果) stackflow 处理方法: [self.tableviewscrollRectToVis ...
- Linux:加载硬盘
在腾讯云购买了一个云服务器,送了20G的系统盘,购买了一个50G的数据盘. 第一次进入系统后,通过镜像中自带的脚本,挂载数据盘. 后来重装了系统,进入系统后查看硬盘信息.
- Ubuntu 13.10看视频休眠
cat <<EOF | sudo tee /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla[ ...
- PICT安装与使用
一.PICT简介 PICT工具是在微软公司推出的一款成对组合的命令行生成工具,下载地址http://download.microsoft.com/download/f/5/5/f55484df-849 ...
- php中urldecode()和urlencode()
urlencode()函数原理就是首先把中文字符转换为十六进制,然后在每个字符前面加一个标识符%.urldecode()函数与urlencode()函数原理相反,用于解码已编码的 URL 字符串,其原 ...
- Linux使用ssh公钥实现免密码登录Linux
ssh 无密码登录要使用公钥与私钥.linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例.有机器A(192.168.1.155),B(192.168.1.181).现想A ...
- 初探jquery之强大丰富的选择器
---恢复内容开始--- 1.基本选择器 常用的有id选择器:#id, 类选择器:.class , 元素选择器. 2.层次选择器 $(ancestor descendant):选取ancestor ...
- Codeforces 732F [边双联通分量][tarjan]
/* 不要低头,不要放弃,不要气馁,不要慌张 题意: 给一个无向图.现在要求给这个无向图的边加上方向. 定义f(x)为从x点出发能够到达的点的数目. 使得MIN(f(x))最大. 思路: 先tarja ...
- 【解决】SharePoint Foundation 2013 未显示搜索框
在正确安装 SharePoint Foundation 2013 后会发现页面中缺少搜索框. 经查询网页了解到这是一个Bug,而且在 SP1 中也没有修复,所以即便是安装了 SP1 补丁的系统也需要下 ...