학습
시험

후위 표현식 계산기

난이도
BEGINNER

문제 설명

후위 표현식(Postfix Notation)은 연산자를 피연산자 뒤에 표기하는 수식 표현 방식입니다. 후위 표현식은 괄호 없이도 연산 순서를 명확히 지정할 수 있다는 장점이 있습니다.

공백으로 구분된 후위 표현식 expr이 주어질 때 후위 표현식을 계산한 결과를 반환하는 solution 함수를 작성하시오.

expr의 모든 피연산자는 한 자리의 자연수로만 주어지며, 모든 연산자는 +, -, *, / 중 하나로만 주어집니다.
이때 /는 자연수 몫 나눗셈을 의미합니다.


제한 사항

  • expr의 길이는 1 이상 1,000 이하입니다.
  • expr은 항상 유효한 후위 표현식이 입력으로 주어집니다.
  • expr의 모든 피연산자와 연산자는 공백으로 구분됩니다.
  • expr의 모든 중간 계산 과정은 0보다 크고 2,147,483,647 보다 작은 자연수입니다.

예시 테스트케이스 설명

테스트케이스 번호 expr return
1 "3 4 +" 7
2 "5 1 2 + 4 * + 3 -" 14
3 "9 2 / 3 2 * +" 10

1번 테스트케이스 설명

  • 후위 표현식의 계산 과정은 아래와 같습니다.

    메모리 입력 계산 과정
    [] "3"
    [3] "4"
    [3,4] "+" 3+4=7
    [7]
  • 따라서 최종 계산 결과인 7을 반환합니다.

2번 테스트케이스 설명

  • 후위 표현식의 계산 과정은 아래와 같습니다.

    메모리 입력 계산 과정
    [] "5"
    [5] "1"
    [5,1] "2"
    [5,1,2] "+" 1+2=3
    [5,3] "4"
    [5,3,4] "*" 3*4=12
    [5,12] "+" 5+12=17
    [17] "3"
    [17,3] "-" 17-3=14
    [14]
  • 따라서 최종 계산 결과인 14를 반환합니다.

3번 테스트케이스 설명

  • 후위 표현식의 계산 과정은 아래와 같습니다.

    메모리 입력 계산 과정
    [] "9"
    [9] "2"
    [9,2] "/" 9/2=4
    [4] "3"
    [4,3] "2"
    [4,3,2] "*" 3*2=6
    [4,6] "+" 4+6=10
    [10]
  • 따라서 최종 계산 결과인 10을 반환합니다.