算法——从9个硬币中找出其中的1枚假硬币
9个硬币,其中有一个硬币是假的(不知道其比真的硬币轻或重),问:最少称多少次能找出这枚假硬币?
首先将硬币3等分:
第1次称重
任意两份进行,有两种情况:
第2次称重
以第一次称重不等的那组为基础,即上述的右图
- 两堆称重相等,则可以判断出假硬币在剩下的一堆中。
则对剩下的一堆进行称重,任选两枚进行称重,会出现两种情况:
- 相等时说明假硬币没参与称重;
- 不等时,再进行第3次称重。
- 两堆称重不等,可以知道剩下一堆的硬币全为真。
则将剩下一堆中3枚真硬币与第一次称重的两堆中的任意一堆硬币进行替换:
- 天平未变化,则判断出假硬币存在处及假硬币与真硬币的区别,再进行第3次称重。
- 天平变化,假硬币存在于被替换堆中,由第一次称重可知假硬币与真硬币的区别,再进行第3次称重。
答案:最少3次才能将假硬币称出。
算法——从9个硬币中找出其中的1枚假硬币相关推荐
- 【算法】从一组数中找出和为指定值的任意组合
题目:给定的一组整数,给定一个值X,找出和为X的任意组合. 思路:将X视为重量x(kg)的物品,放在天平左侧,数组中的每个数字视为重量为y(kg)的砝码,砝码从大到小逐一放置,直到天平平衡,那么选择的 ...
- 在n个硬币中找出假币
#include<stdio.h> #define MAXNUM 100 //硬币最大数量int Find_false_coin(int c[],int low,int high) {in ...
- 如何在10亿个整数中找出前1000个最大的数(TopN算法)
面试题目:如何在10亿个整数中找出前1000个最大的数. 我们知道排序算法有很多: 冒泡算法:通过两层for循环,外层第一次循环找到数组中最大的元素放置在倒数第一个位置,第二次循环找到第二大的元素放置 ...
- 数据结构与算法--有序数组中找出和为s的两个数字
有序数组中找和为s的两个数字 题目:输入一个递增排序的数组array, 和一个数字s, 在数组中找出两个数,使得这两个数的和是s,如果有多对,输出一对即可. 最简单方案 双循环,每次获取一个数据,和数 ...
- 从十亿个数中找出前1000个最大的数的算法
10亿个数中找出1000个最大的数的算法思路: 1,先拿出前1000个数字,并排序,找出最小值为 minValue . 2, 然后再依次拿出1000个数字,找出最大值为 tempMaxValu ...
- 给出一个分治算法,在一个具有n个数的数组中找出第二个最大元素。给出你算法的时间复杂性
给出一个分治算法,在一个具有n个数的数组中找出第二个最大元素.给出你算法的时间复杂性. 算法 SECOND_MAX 输入:含有n个元素的数组A,不妨设 n=2^k 输出:该数组中的第二个最大元素 ( ...
- 【面试现场】如何在10亿数中找出前1000大的数
小史是一个应届生,虽然学的是电子专业,但是自己业余时间看了很多互联网与编程方面的书,一心想进BAT互联网公司. 之前小史在BAT三家的面试中已经挂了两家,今天小史去了BAT中的最后一家面试了. 简单的 ...
- 从一个数组中找出 N 个数,其和为 M 的所有可能--最 nice 的解法
比起讨论已经存在的大牛,我们更希望有更多有潜力的前端小伙伴成为大牛,只有这样,前端在未来才能够持续不断的发光发热. 故事的背景 这是一个呆萌炫酷吊炸天的前端算法题,曾经乃至现在也是叱咤风云在各个面试场 ...
- 如何在10亿个整数中找出前1000个最大的数?
作者:vincent-duan,专注 Java,沉迷开源,架构师社区合伙人! 面试题目:如何在10亿个整数中找出前1000个最大的数. 我们知道排序算法有很多: 冒泡算法:通过两层for循环,外层第一 ...
最新文章
- linux权限管理(chown、chgrp、chomd)
- 高低压验电笔应用口诀及使用方法
- html弹出窗口加载别的页面地址,仿layer.open打开新窗口URL,自适应URL页面高度
- [Java Plasterer] Java Components 3:Java Enum
- 三元表达式 列表递推 生成器表达式
- Nodejs线上日志部署
- 基于JAVA+SpringMVC+Mybatis+MYSQL的网上相册展示系统
- java 实现内存数据表_数据结构 Java中的内存
- SaaSpace:12种最好的免费甘特图软件工具
- unity4.x从入门到精通、Unity 5.x游戏开发指南读书摘要(2015-4-21 12:10、2015-12-28 22:12)
- pygame 画图练习
- Word中删除指定页的页眉和页脚 + 删除第一页空白页 (简单、有效)
- 《商业银行会计》--概述
- 百钱百鸡问题最优解法
- OpenCVSharp 相机棋盘格校正
- FKMT--创建凭证模板
- 总算有人讲明白了什么是特性阻抗什么是阻抗匹配
- ERNIE: 2.0带来了什么
- 多媒体计算机系统包括多媒体计算机软件,多媒体计算机系统包括什么
- ctfshow七夕杯
热门文章
- 剪映专业版 1.2.0 - 一款全能好用的视频编辑工具
- 休闲零食生产企业如何做好供应链管理?
- 票据ticket实现方式java代码_Java代码实践12306售票算法(二)
- ActivityThread: Performing stop of activity that is not resumed:
- 云主机装黑果实践(6):处理云主机上变色龙启动后置过程:驱动和黑屏
- 你知道一本书封面的著、编著、编、主编分别是什么意思吗?
- 【FLASH自制游戏】轮之数袭
- 光流传感器 定位精度_光流传感器
- SecureCRT方向键不可用
- C语言二维数求矩阵每行的最大值与最小值