如何用多米诺骨牌填满棋盘?

时间:2011-06-16 11:29:13

标签: algorithm

我们如何用多米诺骨牌填充棋盘,我们有一些块。和棋盘是n x m。以及填充有序号码的地方。

测试:

enter image description here

这样回答:

enter image description here

输入给出n,m和k。 k是块数。 接下来的k行给出6 74 9等块。

抱歉我的英语。

1 个答案:

答案 0 :(得分:2)

这是一个想法。在您的示例板中,很明显,正方形7 914必须包含多米诺骨牌'结尾',也就是说必须存在覆盖{{{ 1}},2-78-9

(如果不是'立即显而易见',我使用的规则是三面有'墙'的正方形决定了正方形多米诺骨牌的方向)

如果我们放置这三个多米诺骨牌,那么现在可能存在相同规则的更多正方形(例如14-15)。

通过迭代这个过程,我们当然可以朝着我们的目标前进,或者到达我们知道无法实现的目标。

了解你能走多远。

编辑,请注意,在您的示例中,左下角2x2(正方形11 12 16 17)不是唯一确定的 - 所描绘的排列的90度旋转也可以 - 所以你将不得不考虑这种情况。如果您正在寻找任何解决方案,您必须想出一种随意选择其中一种可能性的方法;如果你想要枚举所有的可能性,你将不得不想出一个找到它们的方法!