1541 잃어버린 괄호

Yohan Kim·2022년 7월 5일
0

문제

주어진 식의 괄호를 써서 값을 최소로 만드는 문제이다.

코드

import sys

def calc( s ):
    arr = s.split("+")
    result = 0
    for i in arr:
        result += int(i)
    return result

input = sys.stdin.readline()
data = input.split("-")

index = 0
answer = 0
while(index < len(data)):
    if(index == 0):
        answer += calc(data[index])
    else:
        answer -= calc(data[index])
    index += 1
print(answer)

풀이

주어진 식의 값이 최소이다 == (-가 최대로 들어간다)
즉 +면 그냥 더하고 -를 만나면 -를 만나기 전까지 모두 빼주면 되는 문제이다.

풀이 과정
1. 주어진식을 (-)를 기준으로 나눈다.
2. 20+20, -30+20, -90 이런식으로 나누어진 식을 계산하는데
-로 시작한 식은 값을 더하는게 아니라 빼준다.
40 + (-50) + (-90)

profile
안녕하세요 반가워요!

0개의 댓글