aboutsummaryrefslogtreecommitdiff
path: root/challenge-044/lubos-kolouch/python/ch-1.py
blob: 4e58bd9a26023eb4a9ffb2a6264a0bc83b359b68 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
def insert_operators(s, target):
    results = []

    def helper(s, expr):
        if not s:
            if eval(expr) == target:
                results.append(expr)
            return
        for i in range(1, len(s) + 1):
            left, right = s[:i], s[i:]
            helper(right, expr + "+" + left)
            helper(right, expr + "-" + left)

    helper(s, "")
    return results


results = insert_operators("123456789", 100)
for r in results:
    print(r)