fork download
  1. l = []
  2. out=list()
  3. num = int(input("Enter a number: "))
  4.  
  5. def findCombinations(n, product):
  6. if product == num:
  7. out.append(l.copy())
  8. return
  9.  
  10. for x in range(n, int(num/2)+1):
  11. if product*x > num:
  12. return
  13.  
  14. product = product * x
  15. l.append(x)
  16. findCombinations(x, product)
  17. l.pop()
  18. product = product//x
  19.  
  20. findCombinations(2,1)
  21. print(out)
Success #stdin #stdout 0.02s 9524KB
stdin
20
stdout
Enter a number: [[2, 2, 5], [2, 10], [4, 5]]