2148: 编织图形

内存限制:256 MB 时间限制:1 S 标准输入输出
题目类型:传统 评测方式:文本比较 上传者:
提交:6 通过:3

题目描述

毛线编织的图形使用一串针脚的列表表示,每个针脚可以使用不同的颜色。
对于需要编织的图形,每次任意选择一种颜色 color 和一段区间 [l,r]:
  • 开始和结束的费用为 c;
  • [l,r] 中针脚每次使用颜色 color 的费用为 b;
  • [l,r] 中在背面隐藏颜色 color 的费用为 a。
对于给定的编织图形,请计算每种颜色最小的费用。
例如样例1,需要编织的图形为"rrrrrgbgbgbgbgbrrrrr",a=1,b=2,c=4。 
对于颜色r,第一次选择区间[0,4],费用为:c+c+5*b=18,第二次选择区间[15,19],费用也是18,累计费用36。
对于颜色g,选择区间[5,13],费用为:c+c+5*b+4*a=22。
对于颜色b,与g类似,也是22。

输入格式

第一行输入三个整数 a,b,c,含义如上。1≤a<b<c≤1000。
第二行输入一个字符串 w,表示颜色列表,只包含不同的小写字母,长度不超过 26。
第三行输入一个字符串 p,表示编织图形只包含 w 中出现过的小写字母,长度不超过 1000000。

输出格式

对于 w 中的每种颜色,按照顺序输出每种颜色的最小费用,每行输出一个数字。

输入样例 复制

样例1:
1 2 4
rgb
rrrrrgbgbgbgbgbrrrrr

样例2:
2 4 1000
ab
abbbbbbbba

输出样例 复制

样例1:
36
22
22

样例2:
2024
2032

数据范围与提示

来源:2022.BAPC