728x90
< 해결 방법 >
연산자 까지 구별을 하는 방식으로 풀었는데 다행히 시간 초과는 나오지 않았다. 하지만 - 기호에 따라 나눈 후 이를 다시 + 기호에 따라 split 하는 방법으로 손쉽게 풀 수 있다는 사실을 알게 되었다.
import sys
a = list(sys.stdin.readline().rstrip())
k = [ ]
ans = [ ]
answer = 0
num = ["1","2","3","4","5","6","7","8","9","0"]
str = ""
for i in range(0,len(a)):
if a[i] in num:
str += a[i]
if i==len(a)-1:
k.append(int(str))
else:
k.append(int(str))
k.append(a[i])
str=""
for i in range(0,len(k)-1):
if k[i+1]=="+":
k[i+2]=k[i]+k[i+2]
k[i]="#"
k[i+1]="#"
while '#' in k:
k.remove("#")
for i in range(0,len(k)-1):
if k[i+1]=="-":
k[i+2]=k[i]-k[i+2]
k[i]="#"
k[i+1]="#"
print(k[-1])
728x90
'🟢 알고리즘 문제 풀이 > Baekjoon' 카테고리의 다른 글
| [파이썬] 백준 10828 스택 (0) | 2022.09.13 |
|---|---|
| [파이썬] 백준 9012 괄호 (0) | 2022.09.13 |
| [파이썬] 백준 13305 주유소 (0) | 2022.09.07 |
| [파이썬] 백준 11399 ATM (0) | 2022.09.05 |
| [파이썬] 백준 11047 동전0 (0) | 2022.09.05 |