В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География

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

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

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

Показать ответ
Ответ:
Юль4ик11
Юль4ик11
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;

}

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота