Bamboo is coming
[211109] 백준 1935 후위표기식2 실버3 문제풀이 python 본문
- 알고리즘 분류 : 자료구조, 스택
#백준 1935 후위표기식2 실버3 스택
import sys
input = sys.stdin.readline
stack = []
N=int(input()) #피연산자 개수 N
txt = input() #후위표기식
opr = []
for i in range(N):
opr.append(input().strip())
for i in txt.strip():
if(i>="A" and i<="Z"):
stack.append(int(opr[ord(i)-65])) #아스키 코드 이용
else:
y = stack.pop()
x = stack.pop()
if(i=='+'):
ans = x+y
elif(i=='-'):
ans = x-y
elif(i=='*'):
ans = x*y
elif(i=='/'):
ans = x/y
stack.append(ans)
print("%.2f" % stack.pop())
- 파이썬에서 stack은 list 구조로 구현하기
'PS' 카테고리의 다른 글
[211111] 백준 16113 시그널 실버2 문자열 문제풀이 python (0) | 2022.01.14 |
---|---|
[211110] 백준 2841 외계인의 기타 연주 실버1 문제풀이 python (0) | 2022.01.14 |
[211101] 프로그래머스 위클리챌린지 최소직사각형 문제풀이 java (0) | 2022.01.12 |
[210928] 백준 13565 침투 실버2 문제풀이 python (0) | 2022.01.12 |
[210908] 백준 10989 수 정렬하기3 실버5 문제풀이 python (0) | 2022.01.12 |
Comments