코딩하는 해맑은 거북이

[Python] 잃어버린 괄호 - 백준 (그리디) 본문

코딩테스트

[Python] 잃어버린 괄호 - 백준 (그리디)

#CJE 2023. 1. 17.
해당 글은 백준 1541번 문제 '잃어버린 괄호'을 다룬다.

문제

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

 

1541번: 잃어버린 괄호

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

www.acmicpc.net

 

설명

해당 문제를 그리디하게 풀면 되는 문제로, 마이너스(-) 뒤에 부분을 다 빼주면 최소값을 만들 수 있다.

마이너스(-)로 split 한 리스트에서 첫번째 원소값은 마이너스를 할 수 없으므로 플러스(+)를 해주고 나머지는 마이너스(-) 해준다.

 

코드

s = input().split('-')
result = 0
for i in s[0].split('+'):
    result += int(i)
for i in s[1:]:
    for j in i.split('+'):
        result -= int(j)
print(result)

     

 

 

Comments