算法设计与分析 —— 3-4 芯片测试

一好一坏:

说对方好的那个芯片一定是坏的,因为对方说他是坏的。

说对方坏的那个芯片可以是好的,因为对方坏了也可以恰好说对了自己是好的。

也可以两个都是坏的,说好坏都无所谓。

----------------------------------------------------------------------------------------------------------------------------------

前提:好芯片比坏芯片至少多1片

分析:根据前提,必定有一组全是好的,另一组也至少有一个好的

分治:假设总共4片,分成两组,可能产生的结果:

1. 其中一组如果是“好,好”,另一组不是:成立。且第一组两片芯片全是好的,第二组至少一个好的。

2. 两组都是都是“好,好”:成立。且两组芯片全是好的。因为根据前提,不可能有一组全是坏的。

3. 两组都是“好,坏” 或者 “坏,好”,或者 “坏,坏”:不成立。这样每组都至少有一个是坏的,好芯片的总数不满足前提条件。

处理:根据本分治算法的淘汰规则,

           上述情况1: 留下一个好的,芯片总数减去3/4。剩下的芯片仍然满足前提条件。

           上述情况2: 留下两个好的,芯片总数减半。剩下的芯片仍然满足前提条件。

----------------------------------------------------------------------------------------------------------------------------------

 

  • 8
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值