Логическая задача про лифт

Логическая задача про лифт

Сколько нужно выдержать поездок, чтобы попасть на свой этаж?

Ещё одна задачка на логику, которой программисты мучают друг друга на собеседовании. Считается, что она проверяет нестандартное мышление. Но чу! Можно проверить нестандартное мышление того, кто вам эту задачку задаёт!

Ситуация. Однажды в 20-этажном доме вандалы-математики разбили почти все кнопки в лифте, сохранив только две. От короткого замыкания последние стали работать так: одна поднимает лифт на 13 этажей, а вторая опускает на 8.

Вопрос. Как жильцам попасть с 13-го этажа на 8-й?

В этой задаче есть момент из реальной жизни, который существенно упрощает решение. Но начнём с классического ответа.

Суть в том, что лифт не может выезжать за границы этажей. То есть если на 13 этаже мы нажмём кнопку «вверх», которая должна поднять лифт на 13 этажей, то он никуда не поедет, потому что 13 + 13 = 26, а в доме столько этажей нет. Значит, единственное, что нам остаётся на первом шаге — нажать «вниз»:

Вниз → 5 (13 - 8).

Здесь 5 — это номер этажа, на который приехал лифт, а цифры в скобках показывают начальный.

С 5 этажа мы можем уехать только вверх. Получается, что каждый раз у нас есть только один вариант, на какую кнопку нажимать. Давайте попробуем применить этот принцип и посмотреть, что получится:

Вниз → 5 (13 - 8).

Вверх → 18 (5 + 13).

Вниз → 10 (18 - 8).

Вниз → 2 (10 - 8).

Вверх → 15 (2 + 13).

Вниз → 7 (15 - 8).

Вверх → 20 (7 + 13).

Вниз → 12 (20 - 8).

Вниз → 4 (12 - 8).

Вверх → 17 (4 + 13).

Вниз → 9 (17 - 8).

Вниз → 1 (9 - 8).

Вверх → 14 (1 + 13).

Вниз → 6 (14 - 8).

Вверх → 19 (6 + 13).

Вниз → 11 (19 - 8).

Вниз → 3 (11 - 8).

Вверх → 16 (3 + 13).

Вниз → 8 (16 - 8).

В итоге за 19 поездок мы добрались до нужного этажа. Самое интересное, что по этим правилам лифт дальше никуда поехать не может: 8 + 13 = 21, а 8 - 8 = 0, что выходит за границы этажей. Придётся всё-таки вызывать мастера и делать ремонт.

Но есть и второе решение. Чаще всего в жизни бывает так: как только лифт доезжает до самого верхнего или нижнего этажа, он останавливается, независимо от того, сколько ещё ему оставалось проехать. Это логично: дошли до граничных значений и остановились. Воспользуемся этим и попробуем решить нашу задачу быстрее:

Вниз→ 5 (13 - 8).

Вниз → 1 (5 - 8) → доехали до первого этажа и остановились.

А как добраться с 1 этажа на 13 мы уже знаем из прошлого решения:

Вверх → 14 (1 + 13).

Вниз → 6 (14 - 8).

Вверх → 19 (6 + 13).

Вниз → 11 (19 - 8).

Вниз → 3 (11 - 8).

Вверх → 16 (3 + 13).

Вниз → 8 (16 - 8).

Итого 9 поездок. В два раза меньше, чем первым способом!
Граждане, берегите лифт!

Обложка:

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

Корректор:

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

Вёрстка:

Маша Климентьева

Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию
Вам может быть интересно
Задача про новую должность и выбор зарплаты
Задача про новую должность и выбор зарплаты

Когда вы решили все логические задачи на собеседовании, вам предложат последнюю — самую важную.

hard
Как рассадить интровертов в баре
Как рассадить интровертов в баре

Заходят как-то в бар два интроверта...

hard
Кто такой джуниор и стоит ли идти им работать?
Кто такой джуниор и стоит ли идти им работать?
easy
Нестандартная задача про наши счастливые годы: 2020-й и 2021-й
Нестандартная задача про наши счастливые годы: 2020-й и 2021-й

С виду она очень простая, но это не так

medium
Задача про гору и альпинистов-программистов
Задача про гору и альпинистов-программистов

Реальная задача про выдуманную гору

easy
5 интересных задач про цифры
5 интересных задач про цифры

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

medium
Задача про хакатон и неразбериху с местами
Задача про хакатон и неразбериху с местами

То густо, то пусто

easy
Два школьника и наггетсы
Два школьника и наггетсы

Как расплатиться за обед, если всем досталось поровну?

easy
Вирусная задача про два круга, которую может решить каждый, хотя не знает об этом
Вирусная задача про два круга, которую может решить каждый, хотя не знает об этом

Попробуйте решить и вы

easy
easy