算法:正面硬币

Posted _Anthony

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法:正面硬币相关的知识,希望对你有一定的参考价值。

题目描述:

有100枚硬币躺在桌子上, 每一枚都有正面和反面。其中10枚正面朝上,90枚反面朝上你不能摸、看或者其他方法来判断每一枚硬币哪面朝上。现在把硬币分成两堆,使得每一堆都有同样数量的正面向上的硬币。

 

思路(假设解题过程都是闭着眼睛):将硬币分成两堆,一堆10个,另一堆90个,然后将10的小堆全部翻面。

 

证明:

假设第一次分堆后:

小堆:有x个正面朝上,10-x个反面朝上,

大堆:有10-x个正面朝上,90-10+x=80+x个反面朝上。

小堆全部翻面:

小堆:有10-x个正面朝上,x个反面朝上,

大堆:有10-x个正面朝上,90-10+x=80+x个反面朝上。

以上是关于算法:正面硬币的主要内容,如果未能解决你的问题,请参考以下文章

EM算法1-原理

数据挖掘算法:EM算法

算法笔记_194:历届试题 翻硬币(Java)

算法笔记168:历届试题 矩阵翻硬币(Java)

数据挖掘2022年昆仑万维 算法工程师笔试题

统计学习方法c++实现之八 EM算法与高斯混合模型