#include <iostream>
#include <string>
#include <unordered_map>
#include <algorithm> // 用于max_element
int main() {
std::string input;
std::cout << "请输入一个字符串: ";
std::cin >> input;
// 使用unordered_map来存储字符及其出现次数
std::unordered_map<char, int> charCount;
// 遍历字符串,统计每个字符的出现次数
for (char c : input) {
++charCount[c];
}
// 先获取一个迭代器指向map中value的max_element
auto maxIt = std::max_element(charCount.begin(), charCount.end(),
[](const std::pair<char, int>& a, const std::pair<char, int>& b) {
return a.second < b.second;
});
// 检查map是否为空
if (maxIt != charCount.end()) {
std::cout << "重复出现字符的最大次数是: " << maxIt->second << std::endl;
} else {
std::cout << "字符串为空或所有字符都不重复。" << std::endl;
}
return 0;
}