해피 코딩!

[백준] 1541번 잃어버린 괄호 본문

알고리즘

[백준] 1541번 잃어버린 괄호

지속가능한 성장을 2021. 1. 1. 23:38
def solution(s):
    if ('-' not in s) and ('+' not in s):
        return s
    answer = 0


    s=s.split('-')

    for index, value in enumerate(s):
        if index ==0:
            answer = 0
            if '+' in value:
                value = value.split('+')
                for i in value:
                    answer+=int(i)
            else:
                answer+=int(value)
        else:
            if '+' in value:
                value = value.split('+')
                for i in value:
                    answer-=int(i)
            else:
                answer-=int(value)

    return answer
print(solution(input()))

문제의 해결 방법은

  1. 이 식의 값을 최소로 만드는 방법
    • 빼기를 기준으로 식을 구분한다.
    • 구분한 값들을 더한 후, 종합하여 리턴을 한다.
    • 첫 값은 answer에 더한다.
  2. 빼기를 통해 구분한 값들은 '0'이 포함된 값이 들어올 수 있으니 int 형 변환으로 문자열에 포함된 0을 제거한다.

의 방식을 통해 구현하였습니다.

'알고리즘' 카테고리의 다른 글

[백준] 17298 오큰수  (0) 2021.01.06
[백준] 9012번 괄호  (0) 2021.01.06
[백준] 2108 통계학  (0) 2020.12.31
[백준] 11399 ATM  (0) 2020.12.31
[백준] 12865번 평범한 배낭  (0) 2020.12.30
Comments