Семь свечей

Горящие свечи
Да, здесь 11 свечей, а не 7. Не верь глазам своим: верь условию задачи:)

На столе стоят, образуя круг, семь зажженных волшебных свечей. Ваша задача — погасить их все.

Задувать свечи можно по одной за раз. При этом две соседние свечи, по бокам от задутой, тоже меняют свое состояние (если соседняя свеча была погашена, она зажжется, если была зажжена — погасится).

Если вы «гасите» уже погашенную свечу, она зажигается снова, причем две соседние тоже меняют свое состояние (если соседняя свеча была погашена, она зажжется, если была зажжена — погасится).

Каким образом нужно задувать свечи и сколько раз (минимально) придется дуть?

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

Нет никакого смысла задувать одну и ту же свечу дважды. Если задувать дважды, это все равно, что не задувать эту свечу вообще, а три «гашения» по эффекту равны одному. Исходя из этого, нужно методично задувать каждую свечу по одному разу, полностью игнорируя то, как это сказывается на соседних свечах. Можно идти по кругу, а можно вразброс; главное — задувать каждую свечу только один раз. Применяя такую тактику, вы дунете семь раз и погасите все семь свечей. Семь — минимальное число «ходов».

python books logo

Хотите решать больше задач по Python

Подписывайтесь на нас в Телеграм

×