문제링크 : 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 |