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

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

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

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

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

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

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

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

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

Единственное, что нам известно — что режимов 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
Как выиграть в соревнованиях, когда играешь хуже всех

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

hard
Задача про охрану периметра

Решаем тремя способами: как математик, инженер и программист.

easy
Задачи на рассуждения

Правильные решения в запутанных условиях.

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

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

easy
Задача про умножение с нестандартным решением

Решаем двумя способами — как ребёнок и как программист

easy
Задача о деньгах

Пропало 300 рублей, но никто этого не заметил.

medium
easy
[anycomment]
Exit mobile version