1
在线上的并行卵石游戏
在一行上的Pebble游戏中,有N + 1个标记为0到N的节点。该游戏从节点0上的卵石开始。如果节点i上存在卵石,则可以从节点i + 1添加或删除卵石。目的是在节点N上放置一个小石子,而无需同时在板上放置许多小石子,并且无需执行太多步骤。 天真的解决方案是在1、2、3等上放置一个卵石。就步骤数而言,这是最佳的。同时板上的最大卵石数量并不是最佳的:在最后一步中,板上有N个卵石(不计0的卵石)。 在同一时间放置在电路板上较少的卵石策略是在本文中。它们一次到达节点N而不会超过Θ(lgN)Θ(lgN)\Theta(\lg N)小卵石,但是代价是将步数增加到Θ(nlg23)Θ(nlg23)\Theta(n^{\lg_2 3})。他们切换是否有一个在位置上的卵石NNN而不通过递归地切换周围留下任何其他卵石N/2N/2N/2,使用作为起始点到肘节NNN与另一递归步骤,则切换N/2N/2N/2与第三半尺寸递归步骤以清除它。 我对卵石的最大数量和步骤数之间的权衡取舍很感兴趣,假设卵石的添加和去除可以并行进行。“平行”是指每个步骤可以根据需要添加或删除任意数量的卵石,只要允许每个单独的添加/删除并且不与进行的其他移动相互作用即可。具体来说,如果AAA是我们要添加或删除卵石的节点集合,而PPP是在步骤开始时具有卵石的节点集合,则我们可以在单个步骤中完成所有这些添加和去除操作,如下所示:只要{a−1|a∈A}⊆P−A{a−1|a∈A}⊆P−A\{a-1 | a \in A \} \subseteq P - A。 例如,考虑在步骤i上将卵石放置在iii上但标记为√的倍数的卵石的策略iiiN−−√N\sqrt{N}作为“检查点”,并在可能的情况下除去有卵石的检查点后面的最高索引的卵石。这种策略仍然到达节点N后NNN步骤,例如幼稚的策略,但降低卵石的最大数目从NNN到2N−−√2N2 \sqrt{N}。 是否有以步完成的平行线扰动策略,甚至具有更低的渐近最大卵石复杂度?如果我们愿意允许O (N lg N )个步骤怎么办?在最大卵石和时间之间的权衡特别好的“有趣”点是什么?NNNO(NlgN)O(NlgN)O(N \lg N)