matlab最小字典序,12小球称重问题 完美解决方案(转自 skywind.name)
网上 有好几种 解决方案,skywind.name上的这个最棒, 赞一下!
可惜 偶 苦思冥想 3 个小时,思路换了3、4种,也没找到完美解决方案。
以下 是 转自 skywind.name
12个小球称重问题的完美解法
先看答案,设小球编号分别从A到L,不管每次的结果如何(没有条件分支),如下比较三次:
A B C D === E F G H
A H I K === C D E J
C G I L === A D F K
我们将天平左侧重称为结果1;右侧重为结果-1;平衡为结果0。显然,如果上面三次比较的结果为1,1,-1,则A是坏的,并且比较重。如果结果是-1,0,0,则B比较重。我们还能得出一个额外的解,就是三次都平衡,则没有错误的小球。
所有球比较重的情况列表如下,将结果取反就是轻球的情况。可以看出,每个小球是否轻重都有且只有一种结果状态相对应。
A B C D E F G H I J K L
1 1 1 1 -1 -1 -1 -1 0 0 0 0
1 0 -1 -1 -1 0 0 1 1 -1 1 0
-1 0 1 -1 0 -1 1 0 1 0 -1 1
那么这个表是如何来的呢?能不能有其他本质上不同(不是这个次序的重排列)的类似方案呢?
先说怎么作这个表,将每一竖列看做一个向量,向量的每个分量可能取值为-1,0,1;按字典序取12个排在(000)后面的向量就是:
A B C D E F G H I J K L
0 0 0 0 1 1 1 1 1 1 1 1
0 1 1 1 -1 -1 -1 0 0 0 1 1
1 -1 0 1 -1 0 1 -1 0 1 -1 0
检查每一行,要求-1和1的数目相同,如果不能满足,则将某个1或-1取反。第三行自然满足,第二行可以把C的1改成-1,第一行可以更改F、H、J、L的值来达到目的。修改后的矩阵如下:
A B C D E F G H I J K L
0 0 0 0 1 -1 1 -1 1 -1 1 -1
0 1 -1 1 -1 -1 -1 0 0 0 1 1
1 -1 0 1 -1 0 1 -1 0 1 -1 0
这个结果与前面看起来不同,但实质一样。另外,通过这种方式也可以看出,3次天平称量13个小球问题是无解的。
matlab最小字典序,12小球称重问题 完美解决方案(转自 skywind.name)相关推荐
- 12球称重C语言算法,12小球称重问题
题目: 已知有12个小球,一样的形状和外观,其中有一个是次品,现在给你一个无砝码的天平,称三次, 把这个次品找出来,并且求出这个次品相对真品是偏重还是偏轻? 解答: 首先把小球分成三堆,每堆四个. A ...
- 小球称重的解法整合 N个小球有一个坏球,最少几次能找出坏球
小球称重的解法整合 N个小球有一个坏球,最少几次能找出坏球 最近在看小球称重的问题,之前只记住了公式,最近回过来看,发现知乎上多了一些优质答案,遂记录一下. 现附上学习地址 先说结论, N 个 ...
- 远距离识别超高频RFID读卡器在无人值守车辆称重系统|地磅智能称重系统硬件解决方案中的应用
随着RFID技术的普及与低成本化的推进,各行各业能尽量减少人工干预的项目,更可能的实现RFID自动识别,数据自动交回,比如我们生活中,不起眼的车辆称重行业,也逐渐实现无人值守,自动识别运作.以往通常运 ...
- python小球方案问题_十二个小球称重问题及其Python实现
一.问题描述 在12个外观完全相同的小球中,有一个与其它球重量不同.如何只用一架天平找到这个球并判断它比其它球轻还是重?最少需要称几次?39个球呢? 二.问题分析 这是一个很经典的信息论问题,最开始的 ...
- 十二个小球称重问题及其Python实现
一.问题描述 在12个外观完全相同的小球中,有一个与其它球重量不同.如何只用一架天平找到这个球并判断它比其它球轻还是重?最少需要称几次?39个球呢? 二.问题分析 这是一个很经典的信息论问题, ...
- 信息熵--硬币称重问题-详解
在补<信息熵基础>,此书理论清晰,后面还有一堆要命的习题,加深理解和应用,实乃佳作.其中一些题目对我来说确实不易,记录巩固一下,也和大家交流一下. 顺便补一下,一份完整的参考资料或者书籍, ...
- 皮带秤 算法_改进型卡尔曼滤波算法在电子皮带秤动态称重中的应用.PDF
改进型卡尔曼滤波算法在电子皮带秤动态称重中的应用.PDF 改进型卡尔曼滤波算法在电子皮带秤动态称重中的应用 江苏省计量科学研究院 李冰莹,马宇明,王海涛 南京理工大学 机械工程学院 李永新,葛方丽 [ ...
- 市场调研报告-全球与中国称重控制器市场现状及未来发展趋势
本报告研究全球与中国市场称重控制器的产能.产量.销量.销售额.价格及未来趋势.重点分析全球与中国市场的主要厂商产品特点.产品规格.价格.销量.销售收入及全球和中国市场主要生产商的市场份额.历史数据为2 ...
- 个人小项目:现有12个小球和一个天平,小球中有一个重量与其它的不同,称重几次能将这个小球找出来
个人小项目:现有12个小球和一个天平,小球中有一个重量与其它的不同,称重几次能将这个小球找出来 写这个小项目的心思起源于一个知乎问题:假设现在有12个小球,其中一个重量与其他的不同,至少称多少次可以称 ...
最新文章
- Java字节码进制转换
- 【维纳滤波】通过MATLAB自带的维纳滤波函数进行滤波
- JVM04内存结构概述
- NeuralBuild-用于Java、C#、PHP的DAO产生器
- [转]Nokia是否还有未来 - 小议诺基亚和微软的战略布局
- MySQL 数据库命令之 mysqlshow -- 显示 MySQL 数据库相关信息
- Azure 和 Linux
- Facebook传遍全球的17张励志海报
- PHP使用http_build_query()构造URL字符串的方法(可将POST参数组转换拼接成GET请求链接)...
- 轻量级 Lock Free 线程安全的 QueueT 的C#2.0实现
- 实体类多层嵌套 遍历_JS获取元素多层嵌套思路详解
- STM8 ADC转换模式-------单次模式
- 《面向对象程序设计》课程作业 (三)
- 学生考勤及行为管理系统_幼儿园接送考勤管理系统,可抓拍陌生人 预警黑白名单!...
- UIAutomator源码分析之启动和运行
- 台式计算机用什么电源线,电脑电源线有什么规格
- 计算机word降序排列怎么做,WORD表格怎么按照数字降序排列
- 四芯水晶头电话线的接法
- 如何制作表格(一)——TableLayout
- 什么副业可以月赚1万元?做什么副业可以月入上万?
热门文章
- Landsat系列数据、GF1号数据和哨兵数据下载流程
- 俱乐部管理系统后台的数据库创建
- 【连载 】Linux使用点滴
- ChatGPT应用场景
- 2010.02.03——Jquery ajax 动态更新 局部刷新
- python常见库集合
- Python实现的直线段生成算法和圆弧生成算法
- php网页一键翻译,web网页简单的PHP网站翻译
- mysql表关联字段长度不一样_mysql优化sql案例,5.6版本的致命点之两表关联的字段类型相同的重要性...
- 标签软件如何批量生成公司名片