Задания
Версия для печати и копирования в MS Word
Тип 5 № 15101
i

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

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

2.  Наи­мень­шая из по­лу­чен­ных трёх сумм уда­ля­ет­ся.

3.  Остав­ши­е­ся две суммы за­пи­сы­ва­ют­ся друг за дру­гом в по­ряд­ке не­убы­ва­ния без раз­де­ли­те­лей.

 

При­мер. Ис­ход­ное число: 1982. Суммы: 1 + 9  =  10, 9 + 8  =  17, 8 + 2  =  10. Уда­ля­ет­ся 10. Ре­зуль­тат: 1017.

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

Спрятать решение

Ре­ше­ние.

За­ме­тим, что 1215  — это числа 12 и 15. Чтобы по­лу­чить наи­мень­шее число, возьмём тре­тью сумму ми­ни­маль­но воз­мож­ную  — 1. Ми­ни­маль­ная сумма из трёх  — 1. Её и разобьём, по­ста­вив в на­ча­ло еди­ни­цу, по­сколь­ку с нуля число на­чи­нать­ся не может. По­лу­ча­ем 1XYZ. Остаётся всего 2 суммы 12 и 15. Пред­ста­вим 12 как сумму 3 и 9, а 15  — как сумму 9 и 6. Ста­вим мак­си­маль­но боль­шие сла­га­е­мые в конец. Ис­хо­дя из этого, на­хо­дим ис­ход­ное число  — 1396.

 

Ответ: 1396.

 

При­ведём дру­гое ре­ше­ние на языке Python.

for i in range(1000, 10000):

s = str(i)

k1 = int(s[0]) + int(s[1])

k2 = int(s[1]) + int(s[2])

k3 = int(s[2]) + int(s[3])

first = str(k1 + k2 + k3 - max(k1, k2, k3) - min(k1, k2, k3))

second = str(max(k1, k2, k3))

s1 = first + second

if s1 == '1215':

print(i)

break


Аналоги к заданию № 14767: 15101 Все

Раздел кодификатора ФИПИ: 1.6.3 По­стро­е­ние ал­го­рит­мов и прак­ти­че­ские вы­чис­ле­ния