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

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

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

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

一好一坏:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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