Оладушки

Предположим, вам нужно пожарить N оладушек. (Понятное дело, N≥ 1, ради нуля нечего и сковородку доставать).

На вашей маленькой сковородке можно одновременно поджаривать только 2 оладушки (можно и одну, но больше 2 просто не влезет).

На то, чтобы поджарить оладушку с одной стороны, уходит 1 минута. (Если у вас на сковороде жарятся одновременно 2 оладушки, они обе поджарятся с одной стороны за 1 минуту). Обжаривать нужно непременно с двух сторон.

За какое минимальное время можно поджарить N оладушек?

Посмотреть решение

Разберем несколько случаев.

  1. N = 1. На поджаривание 1 оладушки уйдет 2 минуты (по 1 минуте с каждой стороны).
  2. N — четное число. Оладушки надо жарить с двух сторон, но можно жарить одновременно по две, так что общее время для N оладий — N минут.
  3. N — нечетное число. Тут все интереснее, этот случай разберем подробнее.

N — нечетное число

Возьмем для примера N = 3.

A) 1 минута: жарим оладушки № 1 и № 2 с одной стороны.

Б) Снимаем оладушку № 2. Переворачиваем оладушку №1 (поджариваем ее вторую сторону), а рядом выкладываем оладушку № 3 (поджариваем ее первую сторону). Это еще одна минута.

В) Снимаем оладушку № 1. Переворачиваем оладушку № 3, рядом кладем оладушку № 2 (у обеих поджаривается вторая сторона). Еще одна минута.

Итого, 3 оладушки можно поджарить за 3 минуты. По сути, N оладушек за N минут.

Далее, каким бы ни было нечетное число, если от него отнять 3, оно станет четным, а для четных чисел N оладушек — N минут.

В общем, во всех случаях, кроме N = 1, на поджаривание N оладушек уходит минимально N минут.

python books logo

Английский для программистов

Наш телеграм канал с тестами по английскому языку для программистов. Английский это часть карьеры программиста. Поэтому полезно заняться им уже сейчас

×