문제링크 : www.acmicpc.net/problem/1541
연산자로는 -와 +밖에 없기 때문에 덧셈을 먼저 계산한 후 뺄셈을 계산하면 최대한 큰 수를 빼게되어서 최솟값이 나올 것이라 생각하였다.
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 |