由于 8 球比赛的台球击球可以在多种规则下完成,所以我指的是这样的击球:
即 8 号球必须在中心,并且沿两侧条纹和固体必须交替。剩下的两个球(条纹和实心)无关紧要。
假设您刚刚完成了一场比赛,收集球,将它们放在架子上,然后继续安排它们开始新的比赛。现在它们的顺序是随机的。你如何进行?
免责声明:绘画艺术如下
一个简单的方法是按顺序开始,顶部 -> 底部和左侧 -> 右侧。
例如,我们假设1
在正确的位置。5
不是,我们将它与 交换2
,然后4
与3
(或与8
)交换,但这已经是低效的,因为我们要么将 移动4
到中心,要么将8
in4
的位置 - 即不是它必须在最后的位置.
还有我们想要在角落里制造哪种类型的球的决定。你如何预先决定?你应该考虑有多少球已经到位?在我的例子中,如果你想要角落里的灰色,你已经有 3 个就位(球 1、10、14)。如果你想要角落里的白色的,你只有 2 个就位 (2,11)。这应该重要吗?
为了形式化这一点,我们可以假设有二我们可以做的三个操作:
- 交换两个相邻的球
- 交换两个不相邻的球
- 旋转机架
由于我们可以使用双手,假设我们可以并行化第一个操作(同时交换 2 对球),而我们一次只能交换两个不相邻的球。
什么方法最适合这个任务,使时间最小化(在描述的时间单位中)?贪婪会是最好的吗?(这就是我把它们架起来时的做法,我猜)
编辑:根据现有(或以前的答案) - 您可能会假设角落中的条纹多于实体意味着步幅会更喜欢角落 - 并不是说这不是真的,但如果您做出这样的假设,请证明它。