import sys N = int(input()) S = input() R,M = map(int,input().split()) if N % 2 == 1: print (-1) sys.exit() h = [] nowh = 0 for c in S: if c == "(": nowh += 1 else: nowh -= 1 h.append(nowh) lmin = [i for i in h] for i in range(N-1): lmin[i+1] = min(lmin[i+1], lmin[i]) rmin = [i for i in h] for i in range(N-1,0,-1): rmin[i-1] = min(rmin[i-1], rmin[i]) ans = float("inf") for fi in range(N): move = 0 if fi==0 else (N-fi)*R baseh = 0 if fi==0 else h[fi-1] RR = rmin[fi]-baseh LL = 0 if fi==0 else (h[-1]-baseh) + lmin[fi-1] nmin = min(LL,RR) mov = (abs(nmin)+1) // 2 nsum = nowh + 2*mov add_cost = ( abs(mov) + abs(nsum)//2 ) * M # print ( fi, move, add_cost ) ans = min(ans, move + add_cost) print (ans)