상상쓰

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

Coding Test

[백준] 잃어버린 괄호

상상쓰 2021. 6. 5. 08:21

https://www.acmicpc.net/problem/1541

 

1541번: 잃어버린 괄호

첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다

www.acmicpc.net

 

입력 문자열 s 에서 '-' 가 처음 등장하면 그 뒤로는 연산을 전부 '-' 로 하면 된다.

1+2-3+4+5+6-7-8+9 > 1+2-(3+4+5+6)-7-(8+9) = 1+2-3-4-5-6-7-8-9

eval 함수를 쓰는데 0 으로 시작하는 수가 올 수 있으므로 01+2 에서는 런타임 오류가 발생한다.

 

s = input()
temp = ''
answer = ''
c = 0

for i in s:
    if not i in ['+', '-']:
        temp = temp + i
    else:
        answer = answer + str(int(temp))
        temp = '' 
        
        if c == 0:
            answer = answer + i
        else:
            answer = answer + '-'
        
        if c == 0 and i == '-':
            c = 1

answer = answer + str(int(temp))

print(eval(answer))

'Coding Test' 카테고리의 다른 글

[백준] 단어 수학  (0) 2021.06.06
[백준] 신입 사원  (0) 2021.06.06
[프로그래머스] 기둥과 보 설치  (0) 2021.06.04
[백준] 거스름돈  (0) 2021.06.04
[백준] 회의실 배정  (0) 2021.06.04
Comments