给定一个由字符 e
、l
、m
组成的字符串,每个字符初始为白色。可以选择以下三种未被染色的子串进行染色以获得分数:
ele
,得分为 x。me
,得分为 y。eleme
,得分为 z。求能获得的最大分数。
小有一个长度为 n 的字符串,仅含 e,l,m 三种,每个字符初始都是白色。
小红可以选择一个没有被染色的连续子串 ele ,将这个子串成红色,将这个子串染成红色,并获得 x 分;
小红可以选择一个没有被染色的连续子串 me ,将这个子单染成蓝色,并获得 y 分;
小红可以选择一个没有被染色的连续子串 eleme,将这个子串染成绿色,并获得 z 分。
小红想知道,最多可以获得多少分。
第一行输入一个整数 n ,表示字符串的长度。
第二行输入一个长度为 n 的字符串 s ,字符串仅包含 e,l,m 三种字符。
第三行输入三个整数 x,y,z ,分别表示染成红色、蓝色,绿色所能获得的分数。
1≤n≤100000
1≦x,y,z≦1000
输出一个整数,表示最多可以获得的分数。
输入
5
eleme
1 2 3
输出
3
说明
可以将前三个字符染成红色,获得 1 分,再将后两个字符染成蓝色,获得 2 分,总得分为 3 分。
也可以直接将整个字符串染成绿色,获得 3 分。