Задание 5. Информатика. ЕГЭ. Поляков-144

Просмотры: 107
Изменено: 24 ноября 2024

Автомат получает на вход пятизначное число. По этому числу строится новое число по следующим правилам.

  1. Складываются отдельно первая, третья и пятая цифры, а также вторая и четвёртая цифры.
  2. Полученные два числа записываются друг за другом в порядке неубывания без разделителей.

Пример. Исходное число: \(63~179\). Суммы: \(6 + 1 + 9 = 16\); \(3 + 7 = 10\). Результат: \(1016\). Укажите наименьшее число, при обработке которого автомат выдаёт результат \(621\).

Решение:

C++


#include<iostream>
#include<string>

using namespace std;

int32_t main() {
    unsigned int N;
    string s;

    for (N = 10000; N < 100000; N++) {
        unsigned int s0, s1;
        string ans;
        s = to_string(N);
        s0 = s[0] - '0' + s[2] - '0' + s[4] - '0';
        s1 = s[1] - '0' + s[3] - '0';
        ans = (s0 <= s1) ? to_string(s0) + to_string(s1) : to_string(s1) + to_string(s0);
        if (stoi(ans) == 621) {
            cout << N << '\n';
            break;
        }
    }
}

Ответ: \(30969\)