您能想象没有任何线索解决《纽约时报》填字游戏吗?也许不是所有的创造力以及现代填字游戏中出现的新单词和短语,但是有了固定的单词列表,人们还是有希望的。在此挑战中,您将创建一个填字游戏拼图网格,在理论上这是可能的。
挑战
最大化白色和黑色底纹的15x15填字游戏网格中的白色方块数量,以使白色方块可以唯一地填充字母,以便每个跨字和向下的单词都出现在国际拼字游戏单词列表中。
网格构造说明
在美国报纸中,通常会构造填字游戏网格,以使每个字母都被“选中”,这意味着它既是“跨字”又是“下”字的一部分。在英国和其他地方(尤其是在隐秘的填字游戏中),情况并非一定如此:如果“ across”或“ down”单词仅是一个字母,则不必是实际单词(例如“ A”或“ I” ”)。对于此挑战,请遵循更为宽松的规则:单字母单词不必出现在单词列表中。
还有其他各种传统(在美国和其他地方),在此挑战中无需遵循任何传统。例如,单词只能是两个字母长,单词可以重复,并且网格不必具有(旋转)对称性。
这有可能吗?
是! 可以编写一个简短的脚本来验证左侧空白网格的唯一解决方案是右侧填充的网格:
可以用计算机可读格式显示填充的网格,如下所示:
###CH##########
###YE##########
###AM##########
CYANOCOBALAMINE
HEMOCHROMATOSES
###CH##########
###OR##########
###BO##########
###AM##########
###LA##########
###AT##########
###MO##########
###IS##########
###NE##########
###ES##########
您的解决方案
上面的网格在15x15网格的225个正方形中共有56个白色正方形。这是此挑战的基准。带有较少白色方块的网格也可能由于其得分以外的原因而引起人们的兴趣,例如,如果它们满足上述某些美学传统,则可能会很有意思。
请以与上述计算机可读基准相同的格式提交解决方案。请包含验证您的网格是否有独特解决方案的代码。
有趣的代码片段(例如,搜索可能的空间)和有关如何找到网格的讨论将受到赞赏。
单词表
国际拼字游戏词清单以前被称为SOWPODS,现在被称为Collins拼字游戏词(CSW)。大多数国家(尤其是美国)都使用它。我们更喜欢使用此列表,因为它包含英式拼写,并且通常比美国单词列表包含很多单词。此列表有多个版本,略有不同。你可以找到不同版本的名单,从维基百科的链接,在Github上,在彼得·诺维格的自然语言语料库和其他地方,还经常被称为“SOWPODS”。
这一挑战对单词表选择的广泛性质高度敏感,而对较小的细节则不那么敏感。例如,上面的基准示例适用于任何版本的CSW,但CH
不是American Scrabble单词列表中的单词。如果出现差异,我们更喜欢使用CSW的最新版本CSW19。(如果使用今年发布的此列表,则可以预期此挑战的答案将更有效)。您可以在Scrabble单词查找器官方网站上以交互方式查询此列表,也可以从Board&Card Games Stack Exchange或Reddit的r / scrabble下载该列表(以及上一版本的CSW15)。
Tldr:在Board&Card Games Stack Exchange上,可以通过纯文本文件(279,496个单词,每行一个)获得此挑战的权威单词列表。
进一步讨论
在早期的答案和评论中提出的一个问题是为什么现有的填字游戏(例如,在NYT中)不回答这个问题。具体而言,已发布的NYT填字游戏的最少黑色正方形(因此最多的白方块)记录已经是填字游戏中最著名的记录。为什么我们不能使用记录网格?有几个问题:
NYT填字游戏中的许多答案未出现在我们的单词列表中。例如,记录网格包括
PEPCID
(商标名称),APASSAGETOINDIA
(电影和小说的四个字专有名称,没有空格书写)和STE
(“ Sainte”的缩写)。似乎记录网格无法用拼字游戏单词解决。仅将单词列表扩展为包含更多单词并不一定能解决这一难题:即使记录网格中的所有单词都出现在我们的单词列表中,如果没有线索,解决方案也不是唯一的。通常可以在答案的末尾更改一些字母,同时保留所有单词。(例如,底部最右边的字母可以从改变
D
到的R
)。事实上,这是(人类)施工过程中部分写入一个字谜时,试图获得“好”字。普通填字游戏(通常)具有独特解决方案的原因是,这些线索有助于缩小正确答案的范围。如果您只是尝试在不使用提示的情况下用单词填充网格,则可能要么没有可能性,要么就有很多可能性。这是同一网格(在NYT中相对频繁使用的一种)的三种不同填充(使用此挑战的单词列表!)的示例:
- 评论中提出的另一个问题是,有些人难以置信,这个问题是编码方面的挑战。也许目前还不清楚,但是很难找到一个有效的答案来应对这一挑战。查找上述基准涉及多个不能保证找到答案的特制搜索程序。如果您想在合理的时间内得到答案,我个人甚至都不知道解决任意网格的一般方法。现有的填字游戏构建程序可以提供帮助,但我认为(也许是错误地)它们实际上并未完全搜索各种可能性。(我在上面的三个并排网格中使用了这样的程序;之所以起作用,是因为该特定网格允许许多解决方案。)
Grids with fewer white squares may also be interesting for reasons other than their score, for example if they satisfy some of the aesthetic traditions mentioned above.
”)-与避免在代码高尔夫中获得奖励类似,我宁愿代码挑战仅是一回事。这意味着所有答案都可以按喜欢进行比较。它还清楚地表明了目标,这将有助于重新投票。