С++ Самая частая буква

Дана строка, возможно, содержащая пробелы. Определите, какая буква латинского алфавита (или какие буквы) в этой строке встречается чаще всего. При решении этой задачи заглавные и строчные буквы считаются одинаковыми, а прочие символы, не являющиеся буквами, не учитываются.

При решении этой задачи нельзя пользоваться вложенными циклами. Входная строка должна обрабатываться за один проход.

Vlada2005Bee Vlada2005Bee    2   30.03.2021 20:49    98

Ответы
obizyana88 obizyana88  30.03.2021 20:50

#include <iostream>

#include <map>

using namespace std;

signed main() {

   pair<char, int> res = {' ', 0};

   map<char,int> m;

   string s;

   getline(cin, s);

   for(auto &i : s){

       i = tolower(i);

       if(i < 'a' || i > 'z') continue;

       m[i]++;

       if(m[i] > res.second)

           res = {i,m[i]};

   }

   cout << res.first;

}

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика