Potrzebuję zrobić to w Pythonie. Istnieje podana lista l, może zawierać ponad 5000 elementów całkowitych. Istnieje limit na sumę liczb, 20000 lub może być wysoki. Wyjście powinno być wszystkie możliwe sumy 2 liczb wybrał z listy, podobnych,Generowanie wszystkich możliwych kombinacji z listy int pod limitem
l=[1,2,3,4,5,6,7,8,9]
output
1+1,1+2,1+3,1+4,1+5,1+6...........
2+2,2+3,2+4.......
.........
.......
2,3,4,5,6... like that
używam tego kodu, robią to teraz, ale to powolny
l=listgen()
p=[]
for i in range(0,len(l)):
for j in range(i,len(l)):
k=l[i]+l[j]
if k not in p:
p.append(k)
p.sort
print(p)
listgen()
jest funkcją generującą listę wejściową.
Stosować http://docs.python.org/library/itertools.html?highlight=itertools#itertools.combinations –
Co masz na myśli przez granicę? Limit sumy lub długości listy wejściowej? –
Limit na sum.sorry Nie wspomniałem, że – Madushan