Тема 5. Алгоритмы – анализ простейших алгоритмов

5.03 Действия над цифрами числа

Вспоминай формулы по каждой теме
Решай новые задачи каждый день
Вдумчиво разбирай решения
ШКОЛКОВО.
Готовиться с нами - ЛЕГКО!
Подтемы раздела алгоритмы – анализ простейших алгоритмов
Решаем задачи

Ошибка.
Попробуйте повторить позже

Задача 1#6007

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

1. Складываются первая и вторая, а также третья и четвертая цифры исходного числа.

2. Полученные два числа записываются друг за другом в порядке неубывания (без разделителей).

Пример. Исходное число: 2491. Суммы: 2 + 4 = 6; 9 + 1 = 10. Результат: 610.

Укажите наименьшее число, в результате обработки которого автомат выдаст число 1718.

Показать ответ и решение

Решение аналитикой:

Максимальное значение, которое можно получить при сложении двух цифр, — 18. Поэтому разобьем результат работы алгоритма на числа, не превышающие 18: 17|18.

Теперь подберем наиболее выгодное для нас разложение числа 17. Наша задача подобрать такое разложение, чтобы одно из чисел в сумме было минимальным:

Разложения, в которых участвуют числа, больше 9, нам не подходят.

Значит, 9 + 8 = 17  — самое выгодное для нас разложение числа 17. В остальных случаях мы не сможем получить минимальное число.

Теперь подберем наиболее выгодное для нас разложение числа 18. Наша задача подобрать такое разложение, чтобы одно из чисел в сумме было минимальным:

Разложения, в которых участвуют числа, больше 9, нам не подходят.

Значит, 9 + 9 = 18  — самое выгодное для нас разложение числа 18. В остальных случаях мы не сможем получить минимальное число.

Поскольку в результате работы алгоритма нам необходимо получить 1718, поставим первой цифрой 8 для получения наименьшего числа, а затем три девятки. Получаем ответ — 8999.

Проверим его: 8 + 9 = 17,9 + 9 = 18  , запишем результаты в порядке неубывания: 1718.

Решение программой:

for x in range(10 ** 3, 10 ** 4):
    s = str(x)
    x1 = int(s[0]) + int(s[1])
    x2 = int(s[2]) + int(s[3])
    if str(min(x1, x2)) + str(max(x1, x2)) == ’1718’:
        print(x)
        break

Ответ: 8999

Ошибка.
Попробуйте повторить позже

Задача 2#6008

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

1. Складываются первая и вторая, а также третья и четвертая цифры исходного числа;

2. Полученные два числа записываются друг за другом в порядке неубывания (без разделителей).

Пример. Исходное число: 2491  . Суммы: 2 + 4 = 6  ; 9 + 1 = 10  . Результат: 610  .

Укажите наименьшее число, в результате обработки которого автомат выдаст число 1218  .

Показать ответ и решение

Максимальное значение, которое можно получить при сложении двух цифр, — 18. Поэтому разобьем результат работы алгоритма на числа, не превышающие 18: 12|18.

Теперь подберем наиболее выгодное для нас разложение числа 12. Наша задача подобрать такое разложение, чтобы одно из чисел в сумме было минимальным:

Разложения, в которых участвуют числа, больше 9, нам не подходят.

Значит, 9 + 3 = 12  — самое выгодное для нас разложение числа 12. В остальных случаях мы не сможем получить минимальное число.

Теперь подберем наиболее выгодное для нас разложение числа 18. Наша задача подобрать такое разложение, чтобы одно из чисел в сумме было минимальным:

Разложения, в которых участвуют числа, больше 9, нам не подходят.

Значит, 9 + 9 = 18  — самое выгодное для нас разложение числа 18. В остальных случаях мы не сможем получить минимальное число.

Поскольку в результате работы алгоритма нам необходимо получить 1218, поставим первой цифрой 3 для получения наименьшего числа, а затем три девятки. Получаем ответ — 3999.

Проверим его: 3 + 9 = 12,9 + 9 = 18  , запишем результаты в порядке неубывания: 1218.

Решение программой:

for k in range(1000, 10000):
    s1 = int(str(k)[0]) + int(str(k)[1])
    s2 = int(str(k)[2]) + int(str(k)[3])
    if str(min(s1, s2)) + str(max(s1, s2)) == ’1218’:
        print(k)
        break

Ответ: 3999

Ошибка.
Попробуйте повторить позже

Задача 3#6009

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

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

Пример. Исходное число: 2491  . Суммы: 2 + 9 = 11  ; 4 + 1 = 5  . Результат: 511  .

Укажите наименьшее число, в результате обработки которого автомат выдаст число 717  .

Показать ответ и решение

Решение 1

Максимальное значение, которое можно получить при сложении двух цифр, — 18  . Поэтому разобьем результат работы алгоритма на числа, не превышающие 18  : 7  |17  .

Теперь подберем наиболее выгодное для нас разложение числа 17  . Наша задача подобрать такое разложение, чтобы одно из чисел в сумме было минимальным:

Разложения, в которых участвуют числа, больше 9  , нам не подходят.

Значит, 9 + 8 = 17  — самое выгодное для нас разложение числа 17  . В остальных случаях мы не сможем получить минимальное число.

Теперь подберем наиболее выгодное для нас разложение числа 7  . Наша задача подобрать такое разложение, чтобы одно из чисел в сумме было минимальным:

1 + 6 = 7  — самое выгодное для нас разложение числа 7  . В остальных случаях мы не сможем получить минимальное число.

Поскольку в результате работы алгоритма нам необходимо получить 717  , исходя из разложений, получим ответ — 1869  .

Проверим его: 1 + 6 = 7,8 + 9 = 17  , запишем результаты в порядке возрастания: 717  .

Решение 2

for i in range(1000, 10000):
    a = str(i)
    x1 = int(a[0]) + int(a[2])
    x2 = int(a[1]) + int(a[3])
    if x1 > x2:
        x = str(x2) + str(x1)
    else:
        x = str(x1) + str(x2)
    if x == "717":
        print(i)
        break

Ответ: 1869

Ошибка.
Попробуйте повторить позже

Задача 4#6010

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

1. Перемножаются первая и вторая, а также вторая и третья цифры исходного числа.

2. Полученные два числа записываются друг за другом в порядке невозрастания (без разделителей).

Пример. Исходное число: 291  . Произведения: 2 ⋅ 9 = 18  ; 9 ⋅ 1 = 9  . Результат: 189  .

Укажите наименьшее число, в результате обработки которого автомат выдаст число 213  .

Показать ответ и решение

Программой

for i in range(100, 1000):
    i = str(i)
    first = int(i[0]) * int(i[1])
    second = int(i[1]) * int(i[2])
    if first < second:
        res = str(second) + str(first)
    else:
        res = str(first) + str(second)
    if res == ’213’:
        print(i)
        break

Руками

Максимальное значение, которое можно получить при перемножении двух цифр, — 81  . Поэтому разобьем результат работы алгоритма на числа, не превышающие 81  , записанные в порядке неубывания: 21|3  .

Теперь подберем наиболее выгодное для нас разложение числа 3  . Так как разложение 3  единственное, его и возьмем в качестве наиболее выгодного: 3 ⋅ 1 = 3  .

Теперь подберем наиболее выгодное для нас разложение числа 21  . Наша задача подобрать такое разложение, чтобы одно из чисел в произведении было минимальным:

Разложения, в которых участвуют цифры больше 9  нам не подходят.

Значит, 7 ⋅ 3 = 21  — самое выгодное для нас разложение числа 21  . В остальных случаях мы не сможем получить минимальное число.

Поскольку в результате работы алгоритма нам необходимо получить 213  , исходя из разложений, получим ответ — 137  .

Проверим его: 1 ⋅ 3 = 3,3 ⋅ 7 = 21  , запишем результаты в порядке неубывания: 213  .

Ответ: 137

Ошибка.
Попробуйте повторить позже

Задача 5#6166

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

1. Складываются квадраты цифр, стоящих на нечетных позициях;

2. Складываются квадраты цифр, стоящих на четных позициях;

3. Затем в порядке возрастания записываются эти суммы.

Укажите наименьшее число, при вводе которого автомат выдает число 36107.

Показать ответ и решение
for i in range(10000, 100000):
    s = str(i)
    k1 = int(s[0])**2 + int(s[2])**2 + int(s[4])**2
    k2 = int(s[1])**2 + int(s[3])**2
    first = str(min(k1, k2))
    second = str((max(k1, k2)))
    s1 = first + second
    if s1 == ’36107’:
        print(i)
        break

Сумма квадратов 3 чисел принадлежит промежутку [0,243], а сумма квадратов 2 чисел промежутку [0,162]. В соответствие с этими правилами число разбивается на число 36 и 107. Раскладывая данные числа на суммы квадратов, получаем набор цифр для исходного числа {0,1,5,6,9}, при этом цифры {0,6} находятся на четных позициях, а цифры {1,5,9} на нечетных. Тогда минимальное число есть 10569.

Ответ: 10569

Ошибка.
Попробуйте повторить позже

Задача 6#6167

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

1. Складываются квадраты цифр, стоящих на нечетных позициях;

2. Складываются квадраты цифр, стоящих на четных позициях;

3. Затем в порядке возрастания записываются эти суммы.

Нумерация цифр начинается с единицы.

Укажите наименьшее число, при вводе которого автомат выдает число 26149.

Показать ответ и решение
for i in range(10_000, 99_999 + 1):
    nums = list(map(int, str(i)))
    nch = nums[0] ** 2 + nums[2] ** 2 + nums[4] ** 2
    ch = nums[1] ** 2 + nums[3] ** 2
    if ch < nch:
        res = str(ch) + str(nch)
    else:
        res = str(nch) + str(ch)
    if res == ’26149’:
        print(i)
        break

Сумма квадратов 3 чисел принадлежит промежутку [0,243], а сумма квадратов 2 чисел промежутку [0,162]. В соответствие с этими правилами число разбивается на число 26 и 149. Раскладывая данные числа на суммы квадратов, получаем набор цифр для исходного числа {1,2,5,8,9}, при этом цифры {1,5} находятся на четных позициях, и цифры {2,8,9} на нечетных. Тогда минимальное число есть 21859.

Ответ: 21859

Ошибка.
Попробуйте повторить позже

Задача 7#6168

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

1. Складываются квадраты цифр, стоящих на нечетных позициях;

2. Складываются квадраты цифр, стоящих на четных позициях;

3. Затем в порядке возрастания записываются эти суммы.

Укажите наибольшее число, при вводе которого автомат выдает число 182.

Показать ответ и решение

Сумма квадратов 3 чисел принадлежит промежутку [0,243], а сумма квадратов 2 чисел промежутку [0,162]. В соответствие с этими правилами число разбивается на число 1 и 82. Раскладывая данные числа на суммы квадратов, получаем набор цифр для исходного числа {0,0,1,1,9}, при этом цифры {0,1} находятся на четных позициях, и цифры {0,1,9} на нечетных. Тогда максимальное число есть 91100.

Ответ: 91100

Ошибка.
Попробуйте повторить позже

Задача 8#6169

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

1. Складываются квадраты цифр, стоящих на нечетных позициях;

2. Складываются квадраты цифр, стоящих на четных позициях;

3. Затем в порядке неубывания записываются эти суммы.

Укажите наибольшее число, при вводе которого автомат выдает число 7590.

Показать ответ и решение

Сумма квадратов 3 чисел принадлежит промежутку [0,243], а сумма квадратов 2 чисел промежутку [0,162]. В соответствие с этими правилами число разбивается на число 75 и 90. Раскладывая данные числа на суммы квадратов, получаем набор цифр для исходного числа {1,3,5,7,9}, при этом цифры {3,9} находятся на четных позициях, и цифры {1,5,7} на нечетных. Тогда максимальное число есть 79531.

Ответ: 79531

Ошибка.
Попробуйте повторить позже

Задача 9#6170

Автомат получает на вход какое-то число k (k < 100). По этому числу строится новое число M по таким правилам:

1. k умножается на число равное количеству десятков числа k ;

2. К получившемуся числу прибавляется количество единиц числа k;

3. Вывод получившегося числа M.

Например: число 32 преобразовывается в 98.

Укажите число при вводе которого автомат выдает 46.

Показать ответ и решение

Запишем исходное число k в таком виде: k =  10x + y  .

Тогда число M можно записать следующим образом: M  =  (10x + y)x + y = 10x2 + xy + y.

Также понятно, что 0 ≤ x ≤  9  и 0 ≤ y ≤ 9

Заметим, что при x > 2  :    2
10x +  xy + y > 46  .

Тогда пусть x = 2  : 40 + 3y = 46  ;

3y = 6  ;

y = 2  ;

Исходное число k = 22  .

Ответ: 22

Ошибка.
Попробуйте повторить позже

Задача 10#6171

Автомат получает на вход какое-то число k (k < 100). По этому числу строится новое число M по таким правилам:

1. k умножается на число равное количеству десятков числа k ;

2. К получившемуся числу прибавляется количество единиц числа k;

3. Вывод получившегося числа M.

Например: число 32 преобразовывается в 98.

Укажите число при вводе которого автомат выдает 658.

Показать ответ и решение
for i in range(100):
    k = i
    k *= i // 10
    k += i % 10
    if k == 658:
        print(i)

Запишем исходное число k в таком виде: k = 10x + y  .

Тогда число M можно записать следующим образом:                            2
M  =  (10x + y)x + y = 10x  + xy + y.

Также понятно, что 0 ≤ x ≤  9  и 0 ≤ y ≤ 9

Заметим, что при x > 8  : 10x2 + xy + y > 658  .

Тогда пусть x = 8  : 640 + 9y =  658  ;

9y = 18  ;

y = 2  ;

Исходное число k = 82  .

Ответ: 82

Ошибка.
Попробуйте повторить позже

Задача 11#6172

Автомат получает на вход какое-то число k (k < 100). По этому числу строится новое число M по таким правилам:

1. k умножается на число равное количеству десятков числа k ;

2. К получившемуся числу прибавляется количество единиц числа k;

3. Вывод получившегося числа M.

Например: число 32 преобразовывается в 98: у числа 32 ровно 3 десятка и 2 единицы, значит 32 умножится на 3, а затем увеличится на 2.

Укажите число при вводе которого автомат выдает 860.

Показать ответ и решение

Решение 1

Запишем исходное число k в таком виде: k = 10x + y  .

Тогда число M можно записать следующим образом: M  =  (10x + y)x + y = 10x2 + xy + y.

Также понятно, что 0 ≤ x ≤  9  и 0 ≤ y ≤ 9

Заметим, что при x > 9  :    2
10x +  xy + y > 860  .

Тогда пусть x = 9  : 810 + 10y =  860  ;

10y = 50  ;

y = 5  ;

Исходное число k = 95  .

Решение 2

for k in range(10, 100):
    m = k
    m *= int(str(k)[0])
    m += int(str(k)[1])
    if m == 860:
        print(k)

Ответ: 95

Ошибка.
Попробуйте повторить позже

Задача 12#6173

Автомат получает на вход какое-то число k (k < 100). По этому числу строится новое число M по таким правилам:

1. k умножается на число равное количеству десятков числа k ;

2. К получившемуся числу прибавляется количество единиц числа k;

3. Вывод получившегося числа M.

Например: число 32 преобразовывается в 98.

Укажите число при вводе которого автомат выдает 170.

Показать ответ и решение

Запишем исходное число k в таком виде: k =  10x + y  .

Тогда число M можно записать следующим образом: M  =  (10x + y)x + y = 10x2 + xy + y.

Также понятно, что 0 ≤ x ≤  9  и 0 ≤ y ≤ 9

Заметим, что при x > 4  :    2
10x +  xy + y > 170  .

Тогда пусть x = 4  : 160 + 5y =  170  ;

5y = 10  ;

y = 2  ;

Исходное число k = 42  .

Ответ: 42

Ошибка.
Попробуйте повторить позже

Задача 13#6174

Автомат получает на вход какое-то число k (k < 100). По этому числу строится новое число M по таким правилам:

1. k умножается на число равное количеству десятков числа k ;

2. К получившемуся числу прибавляется количество единиц числа k;

3. Вывод получившегося числа M.

Например: число 32 преобразовывается в 98.

Укажите число при вводе которого автомат выдает 506.

Показать ответ и решение

Запишем исходное число k в таком виде: k =  10x + y  .

Тогда число M можно записать следующим образом: M  =  (10x + y)x + y = 10x2 + xy + y.

Также понятно, что 0 ≤ x ≤  9  и 0 ≤ y ≤ 9

Заметим, что при x > 7  :    2
10x +  xy + y > 506  .

Тогда пусть x = 7  : 490 + 8y =  506  ;

8y = 16  ;

y = 2  ;

Исходное число k = 72  .

Ответ: 72

Ошибка.
Попробуйте повторить позже

Задача 14#6175

Автомат получает на вход четырехзначное число k  . По этому числу строится новое число M  по таким правилам:

1. Последняя цифра числа увеличивается на единицу;

2. Последняя цифра числа переставляется в начало числа;

3. Пункты 1 − 2  повторяются n  раз.

4. Вывод получившегося числа M  .

Примечание: В процессе работы алгоритма не должно происходить ситуаций переполнения (когда последняя цифра числа 9 и она увеличивается на единицу)

Пример: при исходных числах k = 3672  и n = 3  автомат выведет число 7833  .

Укажите наибольшее число k  такое, что при n = 5  сумма цифр числа M  равна 18, и третья цифра числа M  равна 6  .

Показать ответ и решение

Запишем исходное число k в таком виде: x1 : x2 : x3 : x4   .

Если n =  5  , то новое число будет представлено в виде (x4 + 2 ) : (x1 + 1) : (x2 + 1) : (x3 + 1 )  . Заметим, что сумма цифр нового числа M  на n  больше чем сумма цифр исходного числа k  . Тогда сумма цифр исходного числа k  есть 13  . Также заметим, что если на третьей позиции в числе M  стоит 6  , то верно x2 + 1 = 6  , откуда x2 = 5  ; Значит, необходимо подобрать такие x1,x3, x4   , чтобы их сумма была равна 8  , и число k  было максимально. При этом x1,x3 < 9,  а x4 < 8.  Такое число 8500  .

Ответ: 8500

Ошибка.
Попробуйте повторить позже

Задача 15#6176

Автомат получает на вход четырехзначное число k  . По этому числу строится новое число M  по таким правилам:

1. Последняя цифра числа увеличивается на единицу;

2. Последняя цифра числа переставляется в начало числа;

3. Пункты 1 − 2  повторяются n  раз.

4. Вывод получившегося числа M  .

Примечание: В процессе работы алгоритма не должно происходить ситуаций переполнения (когда последняя цифра числа 9 и она увеличивается на единицу)

Пример: при исходных числах k = 3672  и n = 3  автомат выведет число 7833  .

Укажите наибольшее число k  такое, что при n = 5  сумма цифр числа M  равна 28, и третья цифра числа M  равна 1  .

Показать ответ и решение

Запишем исходное число k в таком виде: x1 : x2 : x3 : x4   .

Если n =  5  , то новое число будет представлено в виде (x4 + 2 ) : (x1 + 1) : (x2 + 1) : (x3 + 1 )  . Заметим, что сумма цифр нового числа M  на n  больше чем сумма цифр исходного числа k  . Тогда сумма цифр исходного числа k  есть 23  . Также заметим, что если на третьей позиции в числе M  стоит 1  , то верно x2 + 1 = 1  , откуда x2 = 0  ; Значит, необходимо подобрать такие x1,x3, x4   , чтобы их сумма была равна 23  , и число k  было максимально. При этом x1,x3 < 9,  а x4 < 8.  Такое число 8087  .

Ответ: 8087

Ошибка.
Попробуйте повторить позже

Задача 16#6341

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

1. Складываются квадраты цифр, стоящих на нечетных позициях;

2. Складываются квадраты цифр, стоящих на четных позициях;

3. Затем в порядке возрастания записываются эти суммы.

Укажите наименьшее число, при вводе которого автомат выдает число 9090.

Показать ответ и решение

Сумма квадратов 3 чисел принадлежит промежутку [0,243], а сумма квадратов 2 чисел промежутку [0,162]. В соответствие с этими правилами число разбивается на числа 90 и 90. Раскладывая данные числа на суммы квадратов, получаем набор цифр для исходного числа {1,3,5,8,9}, при этом цифры {3,9} находятся на четных позициях, а цифры {1,5,8} на нечетных. Тогда минимальное число есть 13598.

Ответ: 13598

Ошибка.
Попробуйте повторить позже

Задача 17#6358

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

1. Складываются квадраты цифр, стоящих на нечетных позициях;

2. Складываются квадраты цифр, стоящих на четных позициях;

3. Затем в порядке возрастания записываются эти суммы.

4. Отбрасываются ведущие нули

Укажите наибольшее число, при вводе которого автомат выдает число 13.

Показать ответ и решение

Сумма квадратов 3 чисел принадлежит промежутку [0,243], а сумма квадратов 2 чисел промежутку [0,162]. В соответствие с этими правилами число разбивается на число 1 и 3 или 0 и 13. Раскладывая первые числа на суммы квадратов, получаем набор цифр для исходного числа {0,1,1,1,1}, при этом цифры {0,1} находятся на четных позициях, и цифры {1,1,1} на нечетных. Тогда максимальное число есть 11101.

Раскладывая вторые числа на суммы квадратов, получаем набор цифр для исходного числа {0,0,0,3,2}, при этом цифры {0,0} находятся на четных позициях, и цифры {0,2,3} на нечетных. Тогда максимальное число есть 30200.

Ответ: 30200

Ошибка.
Попробуйте повторить позже

Задача 18#6359

Автомат получает на вход четырехзначное число k  . По этому числу строится новое число M  по таким правилам:

1. Последняя цифра числа увеличивается на единицу;

2. Последняя цифра числа переставляется в начало числа;

3. Пункты 1 − 2  повторяются n  раз.

4. Вывод получившегося числа M  .

Примечание: В процессе работы алгоритма не должно происходить ситуаций переполнения (когда последняя цифра числа 9  и она увеличивается на единицу)

Пример: при исходных числах k = 3672  и n = 3  автомат выведет число 7833  .

Укажите наименьшее число k  такое, что при n =  6  сумма цифр числа M  равна 31, и третья цифра числа M  равна 8  .

Показать ответ и решение
for i in range(1000, 10000):
    flag = True
    number = i
    for j in range(6):
        if str(number)[-1] == ’9’:
            flag = False
            break
        number = str(number + 1)
        number = int(number[-1] + number[:-1])

    if not flag:
        continue

    if sum([int(digit) for digit in str(number)]) == 31 and str(number)[2] == ’8’:
        print(i)
        break

Ответ: 7477

Ошибка.
Попробуйте повторить позже

Задача 19#6394

Автомат получает на вход какое-то число k (k < 100). По этому числу строится новое число M по таким правилам:

1. k умножается на число равное количеству десятков числа k ;

2. К получившемуся числу прибавляется количество единиц числа k;

3. Вывод получившегося числа M.

Например: число 32 преобразовывается в 98.

Укажите число при вводе которого автомат выдает 388.

Показать ответ и решение

Запишем исходное число k в таком виде: k =  10x + y  .

Тогда число M можно записать следующим образом: M  =  (10x + y)x + y = 10x2 + xy + y.

Также понятно, что 0 ≤ x ≤  9  и 0 ≤ y ≤ 9

Заметим, что при x > 6  :    2
10x +  xy + y > 388  .

Тогда пусть x = 6  : 360 + 7y =  388  ;

7y = 28  ;

y = 4  ;

Исходное число k = 64  .

Ответ: 64

Ошибка.
Попробуйте повторить позже

Задача 20#6401

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

1. Перемножаются первая и вторая, а также третья и четвертая цифры исходного числа.

2. Полученные два числа записываются друг за другом в порядке убывания (без разделителей).

Пример. Исходное число: 2491. Произведения: 2 ⋅ 4 = 8;9 ⋅ 1 = 9.  Результат: 98.

Укажите наименьшее число, в результате обработки которого автомат выдаст число 723.

Показать ответ и решение

Максимальное значение, которое можно получить при перемножении двух цифр, — 81. Поэтому разобьем результат работы алгоритма на числа, не превышающие 81, записанные в порядке убывания: 72|3.

Теперь подберем наиболее выгодное для нас разложение числа 72. Наша задача подобрать такое разложение, чтобы одно из чисел в произведении было минимальным:

Значит, 9 ⋅ 8 = 72  — самое выгодное для нас разложение числа 72. В остальных случаях мы не сможем получить минимальное число.

Теперь подберем наиболее выгодное для нас разложение числа 3. Так как разложение 3 единственное, его и возьмем в качестве наиболее выгодного: 3 ⋅ 1 = 3.

Поскольку в результате работы алгоритма нам необходимо получить 723, исходя из разложений, получим ответ — 1389.

Проверим его: 1 ⋅ 3 = 3,8 ⋅ 9 = 72,  запишем результаты в порядке убывания: 723.

Ответ: 1389
Рулетка
Вы можете получить скидку в рулетке!