백준 1541 잃어버린 괄호

고장난 고양이·2022년 11월 4일
0

알고리즘_python

목록 보기
80/84
post-thumbnail

문제

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

코드

s = input().split('-')
num = []
for i in s:
    cnt = 0
    for j in i.split('+'):
        cnt += int(j)
    num.append(cnt)
n = num[0]
for i in range(1, len(num)):
    n -= num[i]
print(n)

주어진 수를 가지고 최소값을 구하는 문제이다.

최소값을 구하는 방법은 -를 기준으로 수를 묶어서 계속 빼면 된다.
즉, 55-50+40이면 55-(50+40)이 최소값
55-40+35-20+70이면 55-(40+35)-(20+70) 이런식이다.

이를 위해 -로 먼저 나누어주고 그다음 +끼리는 다 더해주고나서 보관 후 하나씩 빼면된다.

profile
개발새발X발일지

0개의 댓글