[완전 탐색] 프로그래머스 : 수식 최대화

연수·2022년 3월 24일
0

algorithm

목록 보기
6/6

프로그래머스 : 수식 최대화

코딩테스트 연습 - 수식 최대화

from itertools import permutations
import re

def solution(expression):
    answer = []
    ops = ["+", "-", "*"]
    
    priorities = permutations(ops)
    
    for priority in priorities:
        operands = re.split(r'[+,*,-]', expression)
        operators = re.split('[0-9]+',expression)[1:-1]
        for p in priority:
            while p in operators:
                idx = operators.index(p)
                operands[idx] = str(eval(operands[idx] + p + operands[idx+1]))
                del operators[idx]
                del operands[idx+1]
        answer.append(abs(int(operands[0])))
        
    return max(answer)
profile
DCDI

0개의 댓글