Войти Создать аккаунт

Игра «Погаси свет» · Шаг 3 из 4

Перемешать щелчками

Если зажечь лампочки наугад, половина раскладок 5 × 5 окажется нерешаемой — человек будет мучиться впустую. Поэтому раскладку делают иначе: берут погасшее поле и щёлкают по нему наугад несколько раз. Что щелчками зажжено, щелчками и гасится.

Что сделать

Получите раскладку из погасшего поля случайными щелчками; погасло всё — щёлкайте ещё, пока не загорится.

Что приходит

  • nazhat — щелчок: nazhat(pole, stroka, stolbec) даёт новое поле

  • vysota и shirina — размер поля

  • sluchay — генератор случайностей, как random.Random

  • nazhatiy — сколько раз щёлкнуть

Что вернуть

Поле — список строк, где горит хоть одна лампочка.

Допишите функцию peremeshat в редакторе справа. Результат верните через return — то, что напечатано, на проверку не влияет.

В игре

Игра зовёт peremeshat в начале каждой партии — с вашим щелчком из шага 1 и десятью нажатиями. Решите шаг — и раскладки станут разными, а не вечным крестом посередине.

Без этого шага: раскладка всегда одна — крест посередине.

Пример

В образце вместо настоящего щелчка — игрушка: она переключает одну клетку и ту, что над ней. Поле 2 × 3, три щелчка с генератором random.Random(1): первым выпадает ряд, потом столбец — клетки (0, 2), (0, 1) и снова (0, 1). Второй щелчок по (0, 1) гасит то, что зажёг первый, и горит одна (0, 2): ["..#", "..."].

Готовая игра →

Ctrl+Enter — проверить

Обсуждение

Вопросов пока нет.

Войдите, чтобы спросить.