Today's special moments become memories of tomorrow.

BOJ

[백준 1935번] 후위 표기식2 (java)

lotus lee 2021. 2. 20. 20:41

백준 1935번 : 후위 표기식2

 

1935번: 후위 표기식2

첫째 줄에 피연산자의 개수(1 ≤ N ≤ 26) 가 주어진다. 그리고 둘째 줄에는 후위 표기식이 주어진다. (여기서 피연산자는 A~Z의 영대문자이며, A부터 순서대로 N개의 영대문자만이 사용되며, 길이

www.acmicpc.net

 

해시맵을 사용하여서 각 피연산자 알파벳을 key, 그 알파벳에 해당하는 정수를 value로 넣어주었다.

 

후위표기식으로 주어진 문자열의 문자를 차례대로 확인한다.

 

문자가 피연산자이면 해시맵에서 해당하는 정수값을 찾아서 스택에 넣고, 

문자가 연산자이면 스택에서 연산할 값 2개를 pop한 후, 연산 결과를 다시 스택에 push 한다.

연산이 다 끝나고 마지막에 스택에 남아있는 값이 최종 연산 결과가 된다.

 

연산 결과가 실수이므로 스택에는 정수가 아닌 double형으로 저장해야 한다.

float형이어도 안된다. 연산 결과가 float형 범위를 벗어날 수 있기 때문이다.

 

 

소스코드 :