반응형
https://www.acmicpc.net/problem/1541
1541번: 잃어버린 괄호
첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다
www.acmicpc.net
Hint
X
Solution
수학을 이용하여 해결하였는데 앞에 마이너스가 있으면
그 뒤에 플러스는 항상 빼기를 하면 됩니다
L=list(str(input()))
L2=[]
sign=0 #전에 마이너스가 부호가 있으면 1 없으면 0
result=0
for i in L:
if i!="-" and i !="+":
if len(L2)!=0:
L2[-1]+=i
else:
L2.append(i)
else:
L2.append(i)
for i in range(len(L2)):
L2[i]=int(L2[i]) # L2 안에 있는 값 정수화
for i in range(len(L2)):
if sign==0: #이전에 마이너스가 없는 경우
if L2[i]<0:
sign=1 #이 수 이후에는 계속 빼기만
result+=L2[i]
else:
result+=L2[i]
else: #이전에 마이너스가 있었던 경우
if L2[i]<0:
result+=L2[i]
else:
result-=L2[i]
print(result)
반응형
'백준(BOJ)' 카테고리의 다른 글
[백준] 1946번 신입 사원 : 파이썬(python) 설명 (1) | 2023.03.27 |
---|---|
[백준] 6064번 카잉 달력 : C++ / 파이썬(python) 설명 (0) | 2023.02.15 |
[백준] 11724번 연결 요소의 개수 : 파이썬(python) 설명 (0) | 2022.06.23 |
[백준] 1697번 숨바꼭질 : 파이썬(python) 설명 (0) | 2022.06.22 |
[백준] 10872번 팩토리얼 : 파이썬(python) 설명 (0) | 2021.10.26 |