卡牌游戏

题目描述:

狐狸尼克和兔警官朱迪喜欢玩卡牌游戏。狐狸尼克想玩  游戏,但兔警官朱迪不喜欢玩复杂的游戏,所以兔警官朱迪决定她们只用绿卡和鳄鱼卡来玩这个游戏。

兔警官朱迪有 N 张绿色卡片,每张卡片上都写有以下字母之一:'a', 'c' , 'o', 'i'。

她的总得分被定义为以下部分的总和。

▲ 对于每个字母,她得到的分数与写有该字母的卡片数量的 平方 相同。例如,如果她有 5 张写有字母 'c' 的卡片,她可以得到 25 分。

▲ 每凑成一个单词 "acoiac" ,她就能得到 额外 的 7 分。

朱迪还有M张鳄鱼卡。她可以用一张鳄鱼卡代替任意一张绿卡,绿卡上有她想要选择的字母。

请计算她的卡牌能得到的最大可能分数。

输入格式:

第一行两个整数 N 和 M ,表示兔警官朱迪拥有的绿卡数量和鳄鱼卡的数量。

第二行包含一个长度为 N 个字符的序列,其中第 i 个字符代表第 i 张绿卡上的字母。该序列仅由字符 'a', 'c' , 'o', 'i' 组成。

输出格式:

输出共一行一个整数,即输出兔警官朱迪的最大可能得分。

数据范围:

对于100%的数据:1 ≤ N ≤ 100;0 ≤ M ≤ 10

测试点编号 特殊性质
1~2 M=0
3~5   M=1
6~9 2≤M≤4
10  没有额外限制

样例输入:

样例1:
15 0
acoiacacoiacaia

样例2:
5 1
coiac

样例3:
8 2
ooaaccii

样例输出:

样例1:
79

样例2:
17
coiac

样例3:
35

提示:

169622499287326588.png

时间限制: 1000ms
空间限制: 256MB

来源: 温州市计算机学会2023比赛