문제링크 : www.acmicpc.net/problem/1541

 

1541번: 잃어버린 괄호

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

www.acmicpc.net

연산자로는 -와 +밖에 없기 때문에 덧셈을 먼저 계산한 후 뺄셈을 계산하면 최대한 큰 수를 빼게되어서 최솟값이 나올 것이라 생각하였다.

import sys
ops = sys.stdin.readline().rstrip().split('-')
for i in range(len(ops)):
if '+' in ops[i]:
nums = list(map(int, ops[i].split('+')))
sum = 0
for num in nums:
sum += num
ops[i] = sum
else:
ops[i] = int(ops[i])
result = ops[0]
for i in range(1, len(ops)):
result -= ops[i]
print(result)

'알고리즘 > 백준' 카테고리의 다른 글

[백준] 1932번 - 정수 삼각형  (0) 2021.01.02
[백준] 9461번 - 파도반 수열  (0) 2021.01.02
[백준] 1931번 - 회의실배정  (0) 2020.12.28
[백준] 1920번 - 수 찾기  (0) 2020.12.24
[백준] 10828번 - 스택  (0) 2020.12.23

+ Recent posts