表达式加运算符Leetcode

时间:2019-10-29 13:26:07

标签: python algorithm

我正在尝试解决此问题:

  

给出一个仅包含数字0-9和目标值的字符串,   返回添加二进制运算符(非一元)+,-或   在数字之间加*,以便计算得出目标值。

我想出了一种使用加法和减法而不是乘法的解决方案

class Solution:
    """
    @param num: a string contains only digits 0-9
    @param target: An integer
    @return: return all possibilities
    """
    def addOperators(self, num, target):
        res = []
        def dfs(index, cur, s, prev):

            if cur == target and index == len(str(num)):
                res.append(s)

            for i in range(index, len(num)):
                n = int(num[index:i+1])
                dfs(i+1, cur+n, s+"+"+str(n))
                dfs(i+1, cur-n, s+"-"+str(n)) 

        dfs(0, 0, "")
        return res

如何将乘法结合到该解决方案中?

0 个答案:

没有答案