Как всегда побеждать в «Сапера»? Базовые паттерны

Этот пост написан пользователем Sports.ru, начать писать может каждый болельщик (сделать это можно здесь).

Введение в игру.

Я думаю, большинство людей, кто имел дело с Windows XP (или 2000), сталкивались с игрой «Сапер». Да-да, речь идет о сером окошке с желтым смайлом в верхней части.

Сапер

Не буду лукавить, в моем детстве эта игра для меня была загадкой. Я не понимал, как мой отец мог выигрывать в и точно угадывать, какие клетки стоит открывать, а какие – пометить флажком. Поэтому игра не вызывала у меня явного интереса в отличие от какого-нибудь Serious Sam’a. Но, повзрослев, я тоже проникся любовью к этой игре.

Суть игры довольно проста. Игроку надо разгадать, какие конкретно поля заминированы. Игра проходит на прямоугольном поле (мы берем за основу стандартную версию с полем из квадратиков, до многоугольников и многоуровневых карт я еще сам не дошел).

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

Загружаю...
Победа в Сапере

Но как нам прийти к этой победе? Что за цифры появляются на месте открытых клеток? Я здесь для того, чтобы ответить на эти вопросы.

Цифры – это ключ. Цифры – это информация. Цифры – это путь к победе

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

Сейчас попробую объяснить подробнее. Любая клетка, которая находится не с краю, окружена другими восьмью клетками. Соответственно вокруг клетки максимум может быть 8 мин, а минимум – 0. И именно цифра показывает количество заминированных клеток. Цифра 1 означает, что одна клетка заминирована, а семь других пустые. И так вплоть до 8. Цифра 0 на минном поле не пишется, такие клетки – пустые, без информации. Все просто!

Паттерны

Итак, я вам рассказал вводную часть, теперь пора переходить к основной теме. Не могу же я написать пост только о правилах игры «Сапер». Нет. Здесь я хочу разобрать основные паттерны этой игры.

Для начала определим, что такое паттерн в игре «Сапер». Паттерн — это часто встречающаяся ситуация, имеющая единственное верное решение. Я рассмотрю только базовые, без углубления в теорию вероятностей. Паттерн – некий ключ к решению в той или иной ситуации на игровом поле. Для новичка паттерны помогут быстрее разобраться в игре, а для более продвинутого игрока они послужат инструментом для улучшения своего собственного рекорда.

Первый паттерн. Количество закрытых клеток в радиусе цифры = цифре. Если цифра окружена равным количеством закрытых клеток, то все эти клетки заминированы.

Первый паттерн.

Это база. Если мы имеем цифру 3, и в радиусе этой цифры только три закрытые клетки, то все закрытые клетки в радиусе этой цифры – заминированы.

Второй паттерн. Количество флагов в радиусе цифры = цифре. В случае, если в радиусе цифры уже проставлено равное цифре количество флагов, то можно без опасений открывать остальные закрытые клетки.

Загружаю...
Второй паттерн. Ведение

Если обратить внимание на картинку выше, видно, что под флагом находится цифра 1 (обведена красным кружком). Количество флагов равно единице, значит мы можем открыть все клетки вокруг, не боясь нарваться на мину. Что мы и делаем.

Второй паттерн. Решение

Первые два паттерна являются самыми базовыми, они свободно выводятся из правил игры «Сапер». В описании следующих паттернов я уже не смогу так просто их сформулировать. Поэтому буду объяснять на пальцах, используя картинки.

Третий паттерн. Это паттерн описывает действия игрока в случае нахождения двух цифр 1 с краю подряд. Как на картинке.

Третий паттерн. Введение

Если мы возьмем самую правую единицу, то увидим, что в ее радиусе закрыто всего две клетки. Мы точно знаем, что в одной из двух клеток находится мина. Теперь посмотрим на цифру 1, которая стоит левее от крайней (в красном кругу). Эту цифру окружает уже три закрытые клетки.

Третий паттерн. Объяснение

А так как мы знаем, что мина находится точно в двух крайних закрытых клетках(выделил желтыми кругами), то мы можем свободно открыть все остальные закрытые клетки.

Третий паттерн. Решение

Данный паттерн не дает нам знать, где точно находится мина. Скорее паттерн позволяет найти иные пути решения и помогает выйти из тупика. Я разобрал данный пример, когда цифра 1 находится с краю, но данный паттерн работает и в центре игрового поля.

Четвертый паттерн. Теперь разберем похожий пример на предыдущий, но с одним маленьким изменением. Теперь с краю не будут находиться две цифры 1 подряд. Теперь с краю находится цифра 1, а следом за ней идет цифра 2. В нашем случае цифра 1 сверху, цифра 2 ниже прямо за единицей.

Четверый паттерн. Введение

Мы все так же видим, что в радиусе цифры 1 только две закрытые клетки и в одной из них мина. Теперь переходим к клетке, где указана цифра 2. В ее радиусе, очевидно, находятся две заминированных клетки. А так как мы знаем, что клетки в радиусе цифры 1 (выделил желтым кругом), имеют в себе всего одну мину, то...

Загружаю...
Четвертый паттерн. Объяснение

... следующую клетку можно спокойно открыть закрыть флажком. Потому что точно знаем, что она заминирована. Этот паттерн помог нам найти мину, а не просто пустую клетку, и мы стали на шаг ближе к победе.

Четвертый паттерн. Решение

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

Пятый паттерн. Введение

У нас все так же есть цифра 1, за которой следует цифра 2. Но в данном случае цифра 1 имеет в своем радиусе целых три закрытых клетки, вместо двух из предыдущего примера. Вот незадача, как же тогда применить полученные знания в данном примере? Очень просто. Мы будем смотреть на смежные закрытые клетки у цифры 1 и следующие за ней (выделил их желтыми кругами).

Пятый паттерн. Объяснение

Что мы точно можем сказать об этих двух закрытых клетках? Мы знаем, что в этих двух закрытых клетках не может быть больше одной мины. Именно от этой информации и будем отталкиваться. Если эти две закрытые клетки не могут быть минами одновременно, то в третьей закрытой клетке в радиусе цифры 2 точно находится мина. Можем спокойно ее помечать флажком.

Пятый паттерн. Решение

Заключение

Конечно, я рассмотрел не все существующие паттерны. Но этих пяти хватит, чтобы войти в игру «Сапер» или закрепить/освежить в памяти уже имеющиеся знания. Как я говорил ранее: новичкам паттерны помогут разобраться в игре, а более продвинутым игрокам, автоматизировать свой игровой процесс.

Возможно, в будущем я напишу о других паттернах и раскрою их более подробно. Спасибо!

Конец!
Этот пост опубликован в блоге на Трибуне Sports.ru. Присоединяйтесь к крупнейшему сообществу спортивных болельщиков!
Другие посты автора
Tulka