Questions tagged «boggle»

30
如何从字母矩阵中找到可能的单词列表[Boggle Solver]
最近,我一直在iPhone上玩一个名为Scramble的游戏。你们中有些人可能将此游戏称为Boggle。本质上,当游戏开始时,您会得到一个字母矩阵,如下所示: F X I E A M L O E W B X A S T U 游戏的目标是找到尽可能多的单词,这些单词可以通过将字母链接在一起来形成。您可以从任何字母开始,并且包围它的所有字母都是公平的游戏,然后转到下一个字母时,包围该字母的所有字母都是公平的游戏,除了任何以前使用的字母。因此在上面的网格,例如,我能想出的话LOB,TUX,SEA,FAME,等词必须至少有3个字符,并且不超过N×N个字符,这将是本场比赛16,但可以在一些实现改变。尽管这款游戏既有趣又令人上瘾,但我显然并不擅长于此,我想通过编写一个程序来欺骗我一点,该程序可以给我最好的单词(单词越长,您获得的积分就越多)。 (来源:boggled.org) 不幸的是,我对算法或其效率等不是很好。我的第一次尝试是使用诸如此类的字典(〜2.3MB),并进行线性搜索以尝试将组合与字典条目匹配。这需要非常长时间才能找到可能的单词,并且由于您每轮只有2分钟的时间,因此这根本不够用。 我很想看看是否有任何Stackoverflowers可以提出更有效的解决方案。我主要在寻找使用Big 3 P的解决方案:Python,PHP和Perl,尽管Java或C ++的任何功能也很酷,因为速度是必不可少的。 当前解决方案: 亚当·罗森菲尔德(Adam Rosenfield),Python,约20秒 John Fouhy,Python,大约3秒 Kent Fredric,Perl,〜1秒 Darius Bacon,Python,〜1秒 rvarcher,VB.NET (实时链接), Paolo Bergantino,PHP (实时链接),〜5s(本地〜2s)
376 algorithm  puzzle  boggle 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.