首页 > 解决方案 > 如果矩形适合水平或垂直python,则递归枚举* m矩形中的所有坐标以检查所有坐标

问题描述

我应该如何检查冲突并通过所有可能的方式以返回最佳方式?

目标:返回最佳坐标解决方案,例如(0,0),(0,2)..

我们有一个例子(n * m)=(5 * 5):

dic= dict({"A": [], "B": []})
p={'C': [(0, 0), (0, 1), (0, 2), (0, 3), (0, 4), (1, 0), (1, 1), (1, 2), (1, 3), (1, 4), (2, 0), (2, 1), (2, 2), (2, 3), (2, 4), (3, 0), (3, 1), (3, 2), (3, 3), (3, 4), (4, 0), (4, 1), (4, 2), (4, 3), (4, 4)]}
def enumOptimal(p,dic,ii):
    if A : dic['A'].append(A)
           enumOptimal(next p,dic,ii)
    if B : dic['B'].append(B) 
           enumOptimal(next p,dic,ii) 
    enum(next Point, dic)#in case neither A nor B fits
    if ii >len(p): print dic

标签: python

解决方案


推荐阅读