Expression Add Operators – Python 3 (Week 17 – 20)

import math
class Solution:
    """
    @param n: An integer
    @return: a list of combination
    """
    
    def getFactors(self, n):
        # write your code here
        result = []
        self.helper(result, [], n, 2);
        return result

    def helper(self, result, item, n, start):
        if n == 1:
            if len(item) > 1:
                result.append(item[:])
            return
    
        import math
        for i in range(start, int(math.sqrt(n)) + 1):
            if n % i == 0:
                item.append(i)
                self.helper(result, item, n // i, i)
                item.pop()
 
        item.append(n)
        self.helper(result, item, 1, n)
        item.pop()

Leave a comment

Design a site like this with WordPress.com
Get started