728x90
반응형
https://www.acmicpc.net/problem/1541
1541번: 잃어버린 괄호
첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다
www.acmicpc.net
<풀이>
가장 작은식을 만들기 위해서는 빼는 값을 최대로 만들어야 한다.
즉, -가 나오면 괄호로 묶어버리고, +가 나오면 더해주면 된다.
<전체 코드>
line = list(map(str, input()))
expression = ''
idx = 0
bracket = False
temp = ''
for l in line:
if l == '+':
expression += str(int(temp))+'+'
temp = ''
elif l == '-':
expression += str(int(temp))
temp = ''
if bracket:
expression += ')'
expression += '-('
bracket = True
else:
temp += l
expression += str(int(temp))
if bracket:
expression += ')'
print(eval(expression))
728x90
반응형
'# Coding > # 백준' 카테고리의 다른 글
[백준 / 12851] 숨바꼭질 2 - Python (0) | 2022.04.07 |
---|---|
[백준 / 1697] 숨바꼭질 - Python (0) | 2022.04.06 |
[백준 / 1074] Z - Python (0) | 2022.04.06 |
[백준 / 23743] 방탈출 - Python (0) | 2022.03.25 |
[백준 / 2583] 영역 구하기 - Python (0) | 2022.03.17 |