解题思路
先设原字符串中大写字母的个数为 cnt。
每次操作只能把一个字符在大小写之间切换,因此会产生两种效果:
- 把一个小写字母变成大写字母,则大写字母数量 +1
- 把一个大写字母变成小写字母,则大写字母数量 −1
P4761.第1题-大写字母最大化
题目内容
小红 拿到了一个仅由大小写字母构成的长度为 n 的字符串,她每次操作可以将一个字符在大小写之间切换(例如将 'a' 变为 'A',或将 'Y' 变为 'y')。她希望经过恰好 k 次操作后,大写字母的数量尽可能多。请输出最终字符串中大写字母的数量。
输入描述
在一行上输入两个整数 n,k(1≤n≤105,1≤k≤109)。
在一行上输入一个长度为 n、由大小写字母构成的字符串 s 。
输出描述
在一行上输出一个整数,表示经过恰好 k 次操作后,最终字符串中大写字母的数量。
样例1
输入
5 3
arBrg
输出
4