https://programmers.co.kr/learn/courses/30/lessons/67257
from itertools import permutations
def solution(expression):
answer = 0
for p in permutations(['+', '-', '*'], 3):
answer = max(answer, abs(get_money(expression, p)))
return answer
def get_money(expression, p):
o1, o2, o3 = p
result = expression.split(o3)
for i in range(len(result)):
result[i] = result[i].split(o2)
for j in range(len(result[i])):
result[i][j] = result[i][j].split(o1)
result[i][j] = get_num(result[i][j], o1)
result[i] = get_num(result[i], o2)
result = get_num(result, o3)
return result
def get_num(numbers, operation):
if operation == '+':
return sum(map(int, numbers))
elif operation == '-':
result = int(numbers[0])
for i in range(1, len(numbers)):
result -= int(numbers[i])
return result
elif operation == '*':
result = 1
for n in numbers:
result *= int(n)
return result