페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#5816

후위표기법4 1s 32MB

문제

A...Z의 피연산자들로 이루어진 후위표기식이 주어졌을 때, 그 결과 값을 출력하는 프로그램을 작성하시오.

후위표기식의 각 연산자는 오직 '+', '-', '*', '/'으로만 이루어져 있는데, '/'는 나눈 몫을 의미한다.

만약 0으로 나누는 상황이 발생한다면 "ZeroDivisionError"를 출력한다.


입력

첫 줄에 A...Z의 각 값이 의미하는 수가 주어진다. (1 \le A...Z \le 50)

두 번째 줄에 후위표기식이 주어진다. 후위표기식의 길이는 10을 넘지 않으며 오직 대문자 알파벳과 '+', '-', '*', '/'로만 이루어져있다.


출력

첫 줄에 계산 결과를 출력한다.

만약 0으로 나누는 상황이 발생한다면 "ZeroDivisionError"를 출력한다.


예제 #1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
AB+C*
9

첫 줄을 보면 A=1, B=2, C=3이고, 두 번째 줄의 후위표기식에 해당 값들을 대입하여 계산하면 (1+2)*3=9 이다.


예제 #2

1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 1 2 3 4 5 6
BCBA+-/
ZeroDivisionError


출처

JUNGOL

로그인해야 코드를 작성할 수 있어요.