#arc0082. [arc008_2]謎のたこ焼きおじさん
[arc008_2]謎のたこ焼きおじさん
问题文
你来买章鱼烧,结果被传说中的章鱼烧大师高桥社长认可,并被任命为新开的章鱼烧店的店长。
作为被任命为店长的你,首要任务是制作店铺招牌。
然而,高桥社长没时间帮忙制作招牌,他已经决定了章鱼烧店的名字,然后就离开了,把制作招牌的任务交给了你。
在那时,他给了你一些包含英文字母方块的套装,用于制作招牌。
英文字母套装是指包含随机英文字母方块的袋子。
例如,对于表示英文字母套装的字符串 ,可以理解为:
- 包含英文字母方块
A
的个数为1个。 - 包含英文字母方块
B
的个数为1个。 - 包含英文字母方块
C
的个数为2个。
也就是说,根据英文字母套装 ,每袋英文字母套装中可以使用1个英文字母方块A
、1个英文字母方块B
和2个英文字母方块C
来制作招牌。
由于高桥社长给的英文字母套装都是相同的,无论打开哪个套装,里面的内容都完全一样。
你不能花太多钱制作招牌,所以希望尽可能少地打开英文字母套装,剩下的可以退货。
请问最少需要使用多少个英文字母套装就能够制作店铺的招牌呢?
输入
输入以以下格式从标准输入中给出:
- 输入共有3行。
- 第1行为店铺名字的字符数 和英文字母套装中英文字母方块的数量 ,两者用空格分隔。
- 第2行为店铺名字的字符串 ,长度为 。
- 字符串 中只包含大写字母
A
-Z
。
- 字符串 中只包含大写字母
- 第3行为英文字母套装中包含的英文字母方块的字符串 ,长度为 。
- 字符串 中只包含大写字母
A
-Z
。
- 字符串 中只包含大写字母
输出
将需要使用的最少英文字母套装数量以1行输出到标准输出。
如果无法使用给定的英文字母套装制作招牌,则输出-1
。
输出末尾必须换行。
输入例子 1
7 26
NAOHIRO
ABCDEFGHIJKLMNOPQRSTUVWXYZ
输出例子 1
2
- 由于英文字母套装 只包含1个英文字母方块
O
,所以为了制作店铺名字 ,至少需使用2个英文字母套装。
输入例子 2
8 8
TAKOYAKI
TAKOYAKI
输出例子 2
1
- 使用1个英文字母套装 就可以制作店铺名字 。
输入例子 3
8 4
CHOKUDAI
MYON
输出例子 3
-1
- 由于英文字母套装 中不包含英文字母方块
C``H``K``U``D``A``I
,所以无法制作店铺名字 。 - 因此,输出
-1
。
输入例子 4
6 6
MONAKA
NAMAKO
输出例子 4
1
- 将英文字母套装 中的英文字母方块
N``A``M``A``K``O
重新排列,可以制作店铺名字 。
来源名称
ARC 008