首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Numberjack的彩色方块拼图

使用Numberjack的彩色方块拼图
EN

Stack Overflow用户
提问于 2018-04-04 15:42:44
回答 1查看 272关注 0票数 0

这个问题让我抓狂,我必须用Numberjack来解决这个问题,这是一个用于CSP的python库。我们有n×m个有彩色边的正方形。这些正方形必须以n x m网格的方式排列,使得正方形的相邻边具有相同的颜色。正方形可以旋转和移动。举个例子:

我考虑使用4个矩阵(一个用于nord,一个用于sud,一个用于西侧,一个用于东侧)和一个数字用于颜色。Nord(i,j),West(i,j),East(i,j),Sud(i,j)描述网格上的正方形i,j。我必须考虑哪些约束?

EN

回答 1

Stack Overflow用户

发布于 2018-04-06 20:26:15

由于这听起来像是家庭作业,让我只概述一个有效的模型:

将每种给定的瓦片类型描述为五元组(Type,N,E,S,W),其中Type是这种瓦片类型的标识符,N,E,S,W是北、东、南和西边的颜色。对于每种类型的平铺,有四个这样的元组用于不同的旋转。

用n x m个相似的元组(Type,N,E,S,W)表示网格,其中Type的范围是tile类型标识符,N,E,S,W的范围是颜色。

然后,您需要三种类型的约束,所有这些约束都应该可以很容易地在Numberjack (以及其他有限域风格的解算器)中表示:

every of the >每个格网元组都匹配其中一个切片描述符tuples

  • adjacent colours
  • 格网包含每种类型的正确数量的切片
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49645410

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档