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

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

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

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

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

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

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

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

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

Единственное, что нам известно — что режимов 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
Задачка: узнать среднюю зарплату в строгой компании

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

easy
Задача про полторы белки

Не спрашивайте, просто попробуйте решить.

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

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

hard
Задача на логику: что в какой коробке?

Три коробки, два фрукта, один выбор

easy
Задача о подозрительном автосалоне

Что будет, если продавать машины дешевле себестоимости.

easy
Сложная задача про поросёнка и NFT

Вы не сможете решить её правильно

easy
easy
[anycomment]
Exit mobile version