算法设计手册中的乐透门票覆盖范围?

时间:2013-08-11 11:07:33

标签: algorithm

我正在阅读Steven S. Skiena的算法设计手册。我在第一章阅读有关彩票问题的内容。他声称他的第一个解决方案是保证获胜的最佳票数是不正确的。我不明白他的下一个和最后的解决方案是如何正确的?

figure 1.11中他说:只使用门票{1,2,3}和{1,4,5}保证{1,2,3,4,5}中的获胜对,并且有一个图。我很困惑为什么其他数字不在那里?例如,如果中奖号码是(3,4),(2,4),(2,5),(3,5)等,该怎么办?你显然无法将门票合并在一起,所以我们如何解释这个?在彩票中,如果他们说中奖号码分别是3和5,那么你必须拥有一张票数为3和5的票。有人可以解释一下吗?

2 个答案:

答案 0 :(得分:10)

在示例中

  • n = 5 - 来自通灵的数字
  • j = 3 - 来自n
  • 的中奖号码
  • k = 3 - 故障单上的插槽数
  • l = 2 - 获得珍贵的
  • 所需的匹配数量

这个案例的简单之处在于票证上的所有数字必须介于1..5之间。这是因为j = k,这意味着1到5之间的中奖号码数量与票证上的插槽数量相匹配。

所以拿票{1,2,3}和{1,4,5}。这确实意味着你错过了比赛{3,5}但是如果数字{3,5}在票上,那么票上的另一个数字必须来自集合{1,2,4}。如果是1那么比赛3已经由第一张票进行了检票,如果它是2则然后相同,如果它是5,那么第二张票就可以获得它。

答案 1 :(得分:1)

在图1.11中,每张票的插槽数为3.因此有3个中奖号码。有两张门票{1,2,3}和{1,4,5},您可以保证在3个中奖号码中至少有2个。