Вычислите значение арифметического выражения в обратной польской записи (Reverse Polish Notation).
Допустимые операторы: +, -, *, /. Деление — целочисленное с усечением к нулю.
def eval_rpn(tokens: list[str]) -> int:
eval_rpn(["2", "1", "+", "3", "*"]) → 9 # ((2 + 1) * 3)
eval_rpn(["4", "13", "5", "/", "+"]) → 6 # (4 + (13 / 5))
eval_rpn(["10", "6", "9", "3", "+", "-11", "*", "/", "*", "17", "+", "5", "+"]) → 22
- 1 ≤ len(tokens) ≤ 10⁴
- tokens[i] — число или один из "+", "-", "*", "/"
- Выражение всегда корректно
- Деление на 0 не встречается
tokens = ["2","1","+","3","*"]9tokens = ["4","13","5","/","+"]6tokens = ["10","6","9","3","+","-11","*","/","*","17","+","5","+"]22