n = int(input())
expr = input().strip()
values = [int(input()) for _ in range(n)]
stack = []
for token in expr: #후위연산자 계산을 시작한다
if token.isalpha(): # 피연산자인지 확인한다
idx = ord(token) - ord('A')
stack.append(float(values[idx])) #각 알파벳이 맞는 값을 넣어준다
else: # 연산자를 수행한다
y = stack.pop() #스택에 들어간 값을 꺼내온다
x = stack.pop()
if token == '+':
stack.append(x + y)
elif token == '-':
stack.append(x - y)
elif token == '*':
stack.append(x * y)
elif token == '/':
stack.append(x / y)
result = stack.pop()
print(f"{result:.2f}")
import heapq #힙을 사용해야하는 문제이므로 내장함수를 불러와준다
import sys
input = sys.stdin.readline
n = int(input())
heap = []
for _ in range(n):
y = list(map(int, input().split()))#한 줄로 받았던 숫자들을 분리해 리스트로 넣는다
for x in y:
if len(heap) < n: #정해진 힙의 크기보다 작을 경우 평범하게 넣어준다
heapq.heappush(heap, x)
else: #메모리가 너무 커지는 걸 방지하기 위해 중간중간 버리는 과정을 가져준다. 힙의 크기를 유지한다.
if x > heap[0]:
heapq.heappushpop(heap, x)
print(heap[0])