728x90
https://programmers.co.kr/learn/courses/30/lessons/67257
from itertools import permutations
def calc(op, n, expression):
if n == 2:
return str(eval(expression))
if op[n] == '*':
result = eval('*'.join([calc(op, n+1, e) for e in expression.split('*')]))
if op[n] == '+':
result = eval('+'.join([calc(op, n+1, e) for e in expression.split('+')]))
if op[n] == '-':
result = eval('-'.join([calc(op, n+1, e) for e in expression.split('-')]))
return str(result)
def solution(expression):
answer = 0
operations = list(permutations(['*', '+', '-'], 3))
for op in operations:
result = int(calc(op, 0, expression))
answer = max(answer, abs(result))
return answer
반응형
'전.py' 카테고리의 다른 글
[python] 백준 11047 동전 0 (0) | 2022.06.09 |
---|---|
[python] 프로그래머스 거리두기 확인하기 (0) | 2022.04.22 |
[python] 백준 13305 주유소 (0) | 2022.04.15 |
[python] 프로그래머스 소수 찾기 (0) | 2022.04.13 |
[python] 프로그래머스 모의고사 (0) | 2022.04.13 |