https://programmers.co.kr/learn/courses/30/lessons/64061?language=javascript
후위식 연산(postfix)
후위연산식이 주어지면 연산한 결과를 출력하는 프로그램을 작성하세요. 만약 3*(5+2)-9 을 후위연산식으로 표현하면 352+*9- 로 표현되며 그 결과는 12입니다.
▣ 입력설명
첫 줄에 후위연산식이 주어집니다. 연산식의 길이는 50을 넘지 않습니다.
식은 1~9의 숫자와 +, -, *, / 연산자로만 이루어진다.
▣ 출력설명
연산한 결과를 출력합니다.
▣ 입력예제 1
352+*9-
▣ 출력예제 1
12
function solution(s){
let answer;
let stack=[];
for(let element of s){
if (!isNaN(element)) stack.push(element)
else {
let rt = stack.pop()
let lt = stack.pop()
stack.push(eval(lt + element + rt))
}
}
answer=stack[0];
return answer;
}
let str="123*+42+2/+";
console.log(solution(str));
'알고리즘 풀이' 카테고리의 다른 글
[20211122]알고리즘 풀이 (0) | 2021.11.22 |
---|---|
[20211121]알고리즘 풀이 (0) | 2021.11.21 |
[20211116]알고리즘 풀이 (0) | 2021.11.16 |
[20211109]알고리즘 풀이 (0) | 2021.11.09 |
[20211028]알고리즘 풀이 (0) | 2021.10.28 |