Задачка: как выключить духовку?

Несложная математика, полезно для программирования.

Задачка: как выключить духовку?

Представьте, что у вас есть электрическая духовка с одной механической кнопкой. Кнопка по очереди включает режимы работы от слабых к сильным, затем выключает духовку, а при следующем нажатии снова включает самый слабый режим. Так можно щёлкать по кругу сколько угодно — в зависимости от количества щелчков духовка будет проходить все стадии работы. 

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

Проблема в том, что когда электричество включится, духовка заработает на том режиме, на котором стоит кнопка. Вас дома уже не будет.

Сейчас вам нужно нажать механическую кнопку столько раз, чтобы при включении света духовка оказалась в выключенном режиме. Вы не помните, сколько именно у духовки режимов работы, но их точно не больше четырёх (включая выключенный).

Вопрос: сколько раз нужно сейчас нажать на кнопку, чтобы духовка точно оказалась в выключенном режиме?

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

Единственное, что нам известно — что режимов 4 или меньше. Это значит, что их может быть 2, 3 или 4. Один режим работы быть не может, потому что это будет режим «Выключено».

Представьте, что сейчас духовка выключена и у неё от 2 до 4 режимов работы. Давайте посмотрим, сколько раз нужно нажать на кнопку из каждого состояния, чтобы снова вывести её в выключенное состояние: 

2 режима работы: первая мощность → выключено.

3 режима работы: первая мощность →  вторая мощность → выключено.

4 режима работы: первая мощность →  вторая мощность → третья мощность → выключено.

Получается, что нам нужно найти такое число, которое после стольких нажатий даст нам выключенную духовку в каждом случае. Таким свойством обладает наименьшее общее кратное — оно нацело делится на каждое число из списка кратных. 

У нас есть три варианта нажатий от выключенного состояние в выключенное: 2, 3 и 4. Их наименьшее общее кратное равно 12. Это значит, что 12 — минимальное число, которое делится нацело одновременно на 2, 3 и 4.

Но мы один раз уже нажали на кнопку, когда включили духовку на самый первый режим, значит, нам осталось нажать 11 раз. Духовка выключена, можно спокойно уезжать.

Зачем мне это знать, дорогой Код?

А вот зачем:

  1. Правильно обходить массивы (огромная проблема для начинающих, чтобы не терять первые и последние элементы массива).
  2. Строить эффективные алгоритмы, которые работают на больших массивах данных. 
  3. Чтобы не было пожара.

Художник:

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

Корректор:

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

Вёрстка:

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

Соцсети:

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

Вам может быть интересно
Задача про бейсбольную биту
Задача про бейсбольную биту

Эта задача решается не так просто, как кажется.

easy
Задача: как успеть на презентацию
Задача: как успеть на презентацию

Мы собрали всех IT-знаменитостей вместе, чтобы выяснить, как они ведут себя в темноте.

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

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

hard
Инженерная задачка для программистов
Инженерная задачка для программистов

Как запрограммировать датчик для вращающегося диска?

medium
Пятничная задача про объём напитков в бокале
Пятничная задача про объём напитков в бокале

Исключительно в научных интересах

easy
Как найти площадь прямоугольника?
Как найти площадь прямоугольника?

Геометрическая задача с математическим решением

easy
Сложная задача на логику
Сложная задача на логику

Про поезд-убийцу и быстро бегающих людей.

hard
Как выиграть в соревнованиях, когда играешь хуже всех
Как выиграть в соревнованиях, когда играешь хуже всех

Ещё одна обалденная задача на стратегию и игровую теорию.

hard
Зубодробительная задачка с очень простой математикой
Зубодробительная задачка с очень простой математикой

Эта задача поставит в тупик половину интернета, но не вас.

medium
easy