Спор двух программистов

Задача про математику и находчивость.

Спор двух программистов

Один программист пришёл к другому и, немного выпив, говорит:

— Загадай любое натуральное число X!

— Отстань

— Нет, загадай.

— Ну, загадал.

— А теперь придумай три любых целых числа от 6 до 8 включительно.

— Придумал, и что дальше?

— А теперь умножь своё начальное число X на первое из них, прибавь второе и отними третье. Сколько у тебя получилось?

— Минутку… 164.

— Ха, а я знаю, какие ты числа загадал!

— Что, все четыре числа вычислил?!

— Ага!

— НО КАК?!

Действительно, как первому программисту удалось узнать все числа, которые загадал второй?

Обозначим три загаданных числа от 6 до 8 как A, B и C. Если мы сделаем всё, как написано в задаче, то получим равенство: A × X + B − C = 164.

Из этого получим X:

X = (164 − B + C) / A

Исключаем число 7

Если A = 7, то числитель нашей дроби должен нацело делиться на 7, потому что X не может быть дробным (по условию X — натуральное число). Числа, близкие к 164, которые делятся на 7 — это 161 и 168.

Чтобы получить 161 в числителе, числа B и C должны отличаться друг от друга на 3, а это невозможно, потому что максимальная разница равна 8 − 6 = 2.

Чтобы получить 168 в числителе, числа B и C должны отличаться друг от друга на 4, а это тоже невозможно, потому что максимальная разница равна 8 − 6 = 2.

Значит, A точно не равно 7. Запомним это.

Если число A точно не 7, то оно чётное — 6 или 8. Это значит, что числитель (164 − B + C) тоже чётный, чтобы в результате деления получилось целое число. А это возможно, если числа B и C оба чётные или оба нечётные.

Если числа B и C оба нечётные, то это возможно только в случае, если они оба равны 7. В этом случае −B + C = 0, и в числителе остаётся только 164, которое нам предстоит разделить на 6 или 8. Но 164 не делится нацело ни на 6, ни на 8, значит, они тоже не равны 7.

Исключаем одинаковые B и C

Из последнего примера мы видели, что B и С не могут быть одинаковыми в принципе, неважно, чётными или нечётными, поэтому остаются только два варианта:

B = 6, C = 8 или B = 8, C = 6.

Проверяем оставшиеся варианты

Если B = 6 и C = 8, то в числителе получается так: (164 – 6 + 8) = 166. Но 166 не делится нацело ни на 6, ни на 8 (возможные значения A), значит, этот вариант можно исключить.

Получается, что остаётся только пара B = 8 и C = 6: (164 – 8 + 6) = 162. Число 162 нацело делится только на 6: 162 / 6 = 27, значит, A = 6, а второй программист загадал число 27:

X = 27

A = 6

B = 8

C = 6

Проверяем: 6 × 27 + 8 − 6 = 164. Всё сходится.

Редактура:

Максим Ильяхов

Художник:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Мария Дронова

Соцсети:

Олег Вешкурцев

Вам может быть интересно
5 интересных задач про цифры
5 интересных задач про цифры

Подборка для тех, кто любит подумать.

medium
Андрюха, бензин и Игра престолов
Андрюха, бензин и Игра престолов

Программистская задача с математическим уклоном.

easy
Задача про безумного рекрутера и большой офис
Задача про безумного рекрутера и большой офис

Вот что бывает, когда начинаешь бесконтрольно нанимать людей, — внезапно заканчивается место в офисе.

easy
Сложная задачка на логику и математику: пассажиры в вагоне
Сложная задачка на логику и математику: пассажиры в вагоне

Задача про внутренний туризм

easy
Очень сложная задача про обруч
Очень сложная задача про обруч

Классическая математическая задачка, которая взрывает мозг.

easy
Какой сегодня день недели? Когда выходной?
Какой сегодня день недели? Когда выходной?

А? Что? Как? Задача какая-то

easy
Чужой, Хищник и случай на озере
Чужой, Хищник и случай на озере

Задачка на геометрию.

medium
Задача про безумного рекрутера и большой офис
Задача про безумного рекрутера и большой офис

Вот что бывает, когда начинаешь бесконтрольно нанимать людей, — внезапно заканчивается место в офисе.

easy
Задача, в которой потребуется вся ваша логика
Задача, в которой потребуется вся ваша логика

Олимпиадная задача про шляпы

hard
easy