gpt4 book ai didi

java - 填字游戏的逻辑

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:36:34 25 4
gpt4 key购买 nike

我的任务是创建一个填字游戏,一个特定的填字游戏。所有的答案都给出了,但他们的位置是未知的。程序必须像这样读取带有电路板方案的文件:

0 1 0 0 0 0 0 0 1 0 0
0 1 0 1 1 1 1 1 1 1 1
0 1 0 1 0 0 1 0 1 0 1
0 S 1 1 0 1 1 1 1 0 1
0 1 0 0 1 0 1 0 1 0 0
1 1 1 1 1 1 1 S 1 1 0
0 0 0 0 1 0 1 0 0 0 0
0 0 0 0 1 0 0 0 0 0 0

将每列/每行作为一个可能的答案。有什么方法可以解析这个文件并标记答案,而无需为每个字段使用 gazilion if's 吗?其余逻辑如下:
- 在解析文件的基础上创建纵横字谜。
- 用户从可能性列表中选择答案
- 用户点击 Answer 的第一个 block ,如果所选答案的长度和字母与 Answer 匹配 - 字段更新

我猜游戏板应该存储在二维数组中,每个答案都应该有字段索引?

最佳答案

纵横字谜构造通常是 NP-Complete(即 nxn 板的 1 和 0 以及从中选择答案的给定集合)。看:http://en.wikipedia.org/wiki/List_of_NP-complete_problems这只是提到了这一点。 Garey 和 Johnson 的经典著作中也提到了这一点,说 Exact cover by 3 sets can be reduced to it.

因此,您可能不得不使用一些回溯/启发式方法来填充网格。

也许达特茅斯学院两位学生的项目报告会有所帮助:Crossword Puzzle Generator .它包含一些您可能会使用的启发式方法。

当然,你似乎暗示有人参与,但不清楚你是否可以利用那个人来填充网格,以及你的问题是否基本上是帮助用户解决问题的一些 UI 编程问题。

关于java - 填字游戏的逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3080493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com