竞赛讨论区 > e题数据太水
头像
udiandianis
发布于 03-10 19:03
+ 关注

e题数据太水

n,k=map(int,input().split())

s=input()

dic={}

for i in s:

if i in dic:

dic[i]+=1

else:

dic[i]=1

ans=0

for i in range(65,65+26):

if chr(i) in dic and chr(i+32) in dic:

ans+=min(dic[chr(i)],dic[chr(i+32)])

if k>=(max(dic[chr(i)],dic[chr(i+32)])-min(dic[chr(i)],dic[chr(i+32)]))//2:

k-=(max(dic[chr(i)],dic[chr(i+32)])-min(dic[chr(i)],dic[chr(i+32)]))//2

ans+=(max(dic[chr(i)],dic[chr(i+32)])-min(dic[chr(i)],dic[chr(i+32)]))//2

elif k<(max(dic[chr(i)],dic[chr(i+32)])-min(dic[chr(i)],dic[chr(i+32)]))//2:

ans+=k

k=0

print(ans)

对于数据

5 2

aaaaa

会给出错误答案

全部评论

(0) 回帖
加载中...
话题 回帖

等你来战

查看全部

热门推荐