给定每个元素的最大大小和元素的最大和的元组组合

时间:2019-07-03 09:26:14

标签: python loops combinations combinatorics

我有两个数字

?=每个系数的最大幅度

?=最大数量之和

元组的可能组合是什么?

我尝试了以下代码,但没有得到正确的结果。

while i<=2 and i+j<=3:
    em.append((i,j))
    i+=1
while i<=2 and i+j<=3:
    em.append((i,j))
    j+=1

理想情况下,我希望得到以下结果。

(0,0),(0,1),(1,0),(1,1),(1,2),(2,1)

因此,每个元素小于(或等于)2,并且元组中的元素之和(在最后一个元组的情况下为2 + 1)小于等于3。

对于上面的代码,我得到了[(0,0),(1、0),(1、1),(1、2)]

1 个答案:

答案 0 :(得分:0)

这就是您要尝试的事情

def fun(m,n):
    i = 0    
    em = []
    while i <= m:        
        j = 0
        while i+j <=n and j <=m:
            em.append((i,j))
            j =j+1
        i = i+1
    return em


fun(2,3)

[(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1)]