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

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

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

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

Ситуация. Однажды в 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
Крутейшие задачи на комбинаторику

Комбинаторика и поиск наилучшего решения для всех.

medium
Задача про выгодную торговлю между странами

Что лучше — вино или сыр?

medium
Задачка: тревелблогеры на самолёте

Как им облететь вокруг Земли?

hard
Сборник простых задач по математике, которые кажутся сложными

Или наоборот

hard
Задача: баг или фича?

Сколько времени потребуется программисту, чтобы запилить весь проект?

easy
Задача про демонов с собеседования на аналитика

Что делать демонам в сложной ситуации

hard
easy
[anycomment]
Exit mobile version