Комбинация кортежей для заданной максимальной величины каждого элемента и максимальной суммы элементов - PullRequest
0 голосов
/ 03 июля 2019

У меня есть два числа

? = максимальная величина каждого коэффициента

? = максимальная сумма величин

Какая возможная комбинация кортежей?

Я попробовал следующий код, но я не получил правильный результат.

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 голосов
/ 03 июля 2019

Это то, что вы пытаетесь сделать

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)]
...