C++ . Дано натуральное число. Верно ли, что цифра a встречается в нем реже, чем цифра b?

+440 голосов
5.7m просмотров

C++ . Дано натуральное число. Верно ли, что цифра a встречается в нем реже, чем цифра b?


Информатика (31 баллов) | 5.7m просмотров
Дан 1 ответ
+173 голосов

С++14

Код:

  • #include
  • #include
  • #include
  • #include
  • size_t count_char(const std::string& number, char c) {
  •     return std::count(number.begin(), number.end(), c);
  • }
  • bool is_it_more_than(const std::string& number, char a, char b) {
  •    return count_char(number, a) > count_char(number, b);
  • }
  • int main() {
  •    long long k = 4353621ll;
  •    char a = '3';
  •    char b = '4';
  •    std::string number = std::to_string(k);
  •    std::cout << "Number is " << number << std::endl;</li>
  •    std::cout << "a = " << a << std::endl;</li>
  •    std::cout << "b = " << b << std::endl;</li>
  •    std::cout << "Does a appear in Number more often than b: " << std::boolalpha << is_it_more_than(number, a, b) << std::endl;</li>
  •    return 0;
  • }
(7.1k баллов)
+172

Не застрахован только в тех ситуациях, когда ты изначально неправильно мыслишь потенциальный вектор развития задачи.

+119

За минимальные усилия ты получаешь убер набор для выживания программиста

+44

А когда ты культивируешь разбиение задачи на атомарные действия, это сразу даёт тебе инструментарий для расширения. А так ты культивируешь это повсеместно, в том числе и во временных костылях-скриптах, то и от "перепиши вот это всё" гораздо более застрахован

+154

И когда придет час сделать расширение, окажется, что всё рушится, и для решения надо переписывать всё

+159

это не то когда ты пишешь тот же ИИ переписывая по 10 раз