import pprint, random
pp = pprint.PrettyPrinter(1)
grid = []
for x in range(6):
orbs = [0, 1, 2, 3, 4, 5]
random.shuffle(orbs)
y_list = []
for y in range(5):
y_list.append(orbs[y])
grid.append(y_list)
pp.pprint(grid)
好的,我已经写出了上面的代码来打印一个6(R)x5(C)矩阵的2d数组。板上的每个坐标应该在每个循环上随机生成,这就是我想要的。在
现在,我在思考如何检查三排匹配(仅限于垂直或水平)时遇到了麻烦,这样的随机板永远不会出现这种情况。在
我应该先创建电路板,然后检查条件(一行3个)吗?还是应该在生成行/列时将条件编码到每一行/列?有没有一个python模块我应该看看,它已经按照这些思路做了一些事情?在
编辑:
以下是一个不可接受的输出示例:
^{pr2}$这里有一个可以接受的:
[[4, 1, 4, 4, 5],
[1, 3, 0, 1, 4],
[1, 5, 4, 4, 0],
[5, 2, 0, 4, 3],
[5, 4, 2, 1, 0],
[0, 1, 5, 0, 4]]
原件:
^{pr2}$已验证:
^{3}$使用卷积来检测无效的行\列。在
是的,听起来是最简单的方法!在
我不会的!那就更复杂了。=)
在纽比
您可以使用
numpy.where(a[:,:-2:] == a[:,1:-1:]) & (a[:,:-2:] == a[:,2::])
来获取运行开始的坐标。在相关问题 更多 >
编程相关推荐