欢迎光临散文网 会员登陆 & 注册

谜题规则介绍#5 放置类——星战(starbattle)

2022-03-09 19:08 作者:嘉和逆天  | 我要投稿

今天来介绍一下星战这个题型。

规则:在一些单元格中画星星,使得每行、每列和每个粗线区域内都含有N个星星(N会在题目中说明)。 星星互相不相邻或对角相邻

例题如下,例题中N=1。我会在题目右上角标注该题使用多少个星星。本文仅对N=1和2的情况进行讲解,N更大的时候,技巧其实是相通的,只是情况会稍微复杂一些。



星战的规则理解起来非常简单,和数独其实有很多相通之处。接下来就是星战的一些基本套路。

套路1:排除法

排除法和数独的排除法是一样的,就是当某行/列/宫已经有N个星星的时候,该行/列/宫的其他格子都不能是星星。同时,当某行/列/宫内被排除剩N格可能是星星的时候,这N格就必须都是星星。

排除法的使用就不单独列图了,会在其他套路的讲解中融合进去。

套路2:割补法/区块法

割补法的中心思想是“N个宫只能在N行/列内”或“N行/列只能在N个宫内”。这个套路跟锯齿数独里的割补法是一致的。最简单的“割补法”其实就是那种只占据单行单列的宫,或者某一个占据了一整行/列还多的宫。这种单行/列/宫的割补法和数独的区块法是一致的。

如下图所示,最上方的宫由于占满的第1行,因此它在其他行的格子都不能是星星,否则第1行的星星就不够了。同理,最下方R6C3和R6C4形成的宫完全在第6行内,因此第6行的其他格子就不可以是星星,否则这个宫的星星就不够了。

割补法也可以连环使用。上图中右下角的那个区域内,只有R5C4,R5C5,R5C6可以放星星了,因此R5的其他格子就不能是星星了。那么,对左下的那个宫进行排除,就可以得到R4C1只能是星星了。

然后再次利用排除法可以出R3C5是一个星星。

下面是一个多行列的割补法的例子,实际上就是将R5C3这一格移到了它下方的宫内。此时可以看出来,右下的两个宫均在R5和R6内,因此这两行的其他格子就不能是星星,一样可以得出R4C1是星星。

割补法在很多题目中都有非常强大的用处,也有一些比较难的割补法,这里就不再赘述了,总之记住它的基本思想就可以了。

套路3:结构法

由于星战中由于有星星不能对角相邻的规则,所以会产生一些有趣的结构。星战的结构的核心思想在于:2*2区域中最多只有1个星星。结构法类似于无缘数独中的带无缘的区块。如下图,由于R6C3和R6C4必然有一个星星,因此R5C4就不可以是星星,右下宫进行排除可以出R5C6的星星。

紧接着在第2行使用一个类似的结构,就把这个题目做完了。

结构法在1星的题目里用的不多,下面是一个例子,用的是刚才多行列互补的那个图,大家注意区分这两个题目,虽然最终答案是一样的:

这里红色的三个格子必有一个星星,那么绿色的格子就不可以是星星了。

1星的结构例子还有以下的这些,这里的每个红色区域都是一个结构,可以去掉绿色里面的星星:

上面这个题也是唯一解,也需要用到上面的各种套路,但是本题难度较前面的例题稍高,大家可以尝试一下。

另外,这些结构即便是红色格子减少了也不影响绿色的删减,但是可能会增加能够删减的格子。大家可以自行思考一下,下面的这个红色结构可以删哪些格子?当然,题目还是唯一解的,大家也可以尝试着完成这道题。

而对于N=2的题,结构则丰富得多。最经典的结构就是下图的这个“刀把五”,由于每个2*2区域最多1个星星,因此刀把位置的单格只能是星星,然后又可以利用R9C2和R9C3有一个星星来推出R10C2和R10C3不是星星。

除此之外,图中还有一些比较经典的结构,如下所示,每个带有红色格子的宫是一个结构,可以推出带叉的格子不能是星星。

星战的结构是非常丰富的,本文介绍的只是一小部分,大家有兴趣的话可以自己去寻找一下。另外,结构和结构之间也可以带来很多的联动,结构得到的区块也可以进行各种排除,因此可以得到以下的套路:

套路4:区块排除法

如下图,左上的“板六”形状推出来R2C2和R3C2必有一个星星,而第2列已经有R7C2的星星,因此第2列的其他格子都不能是星星,因此可以得到R9C3是一个星星。这种排除的方法类似于数独中的区块排除法

此时注意到,下图中最左下那个红色的形状有点像大写字母G的宫只有三个格子可以放星星了,那么必然是R9C1和R10C1中有一个,剩下的一个就只能在R5C3了。这个相对于区块排除来说,我更倾向于直接将其归入宫排除法中

更复杂的区块排除法会利用到组合区块。还是这个题,注意左上的宫和左下的蓝色区块,这个蓝色区块有1个星星,那么左上的黄色区域内也只有1个星星,从而得到左上宫的红色区域有1个星星,于是得到红色的区块,绿色的格子就不可能是星星了,也就可以将那个十字形状的宫全部出来了。

区块不仅可以作用在单个宫或者行列,也可以和割补法结合作用在多行多列中。如图,左下的蓝色区块结合黄色的星星再结合红色的宫,总共已经有4个星星,而这些颜色的格子都分布在R9和R10中,这两行内也只有4个星星,因此可以得到R9和R10的其他格子不能是星星,从而得到下方R8C5和R8C7的星星。

做到这里之后,上面的这个题目已经不难了,大家可以尝试着自己利用区块等技巧来完成这个题目。

总而言之,简单星战的套路就是结构出区块,区块出结构,如此一直排除下去,就基本上可以做完整个题。如果是较为复杂的星战,可能会有更深奥的套路,在这里就不细说了。

那么,以下是两个练习题,第1题来自Fake CPOC3,第2题是一个汉字造型题,注意第2题是11阶的。

来自Fake CPOC3,和LITS同盘面,了解LITS规则的朋友可以尝试一下
这个字很容易看出来吧

附上期答案:

不要纠结为什么涂黑格的颜色不一样,上面的比赛答案图忘记修了。

那么这次的介绍就到这里,我们下次再见!

谜题规则介绍#5 放置类——星战(starbattle)的评论 (共 条)

分享到微博请遵守国家法律