3085. 成为 K 特殊字符串需要删除的最少字符数

3085. 成为 K 特殊字符串需要删除的最少字符数


题目链接:3085. 成为 K 特殊字符串需要删除的最少字符数

代码如下:

class Solution {
public:
	int minimumDeletions(string word, int k) {
		unordered_map<char, int> cnt;
		for (char ch : word) {
			cnt[ch]++;
		}
		int res = word.size();
		for (unordered_map<char, int>::iterator it1 = cnt.begin();it1 != cnt.end();it1++) {
			int deleted = 0;
			for (unordered_map<char, int>::iterator it2 = cnt.begin();it2 != cnt.end();it2++) {
				if (it1->second > it2->second) {
					deleted += it2->second;
				}
				else if (it2->second > it1->second + k) {
					deleted += it2->second - (it1->second + k);
				}
			}
			res = min(res, deleted);
		}
		return res;
	}
};
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值