Démineur

Стратегия: рассуждать без угадывания

Кратко

Для решения многих полей достаточно трёх логических приёмов: число, у которого столько же скрытых соседних клеток, сколько оно показывает (все они заминированы); число, вокруг которого уже стоят все нужные флажки (остальные клетки безопасны); и два соседних числа, одно из которых «содержит» другое. В конце партии помогает счётчик мин. Когда ни один из этих приёмов не применим, приходится угадывать.

Поля на этой странице созданы генератором приложения («Новичок», 9 × 9, мин: 10); каждый логический вывод реализован движком приложения без попадания на мину, а затем проверен второй программой.

  • закрытая клетка
  • открытая клетка
  • флажок
  • используемое число
  • клетка, определённая как безопасная
  • мина, найденная рассуждением

Все скрытые соседи числа — мины

В столбце 4, строке 4 стоит число 1, а скрытых соседних клеток у него всего 1 (без учёта уже поставленных вокруг него флажков). Его мины должны где-то находиться: значит, в этой клетке мина.

Все мины у числа отмечены: остальные клетки безопасны

После установки этого флажка вокруг числа в столбце 4, строке 3, равного 1, оказывается столько же флажков, сколько оно показывает. В остальных соседних скрытых клетках мин быть не может; безопасных клеток — 1. В приложении нажатие на это число сразу открывает безопасную клетку (аккорд).

Два соседних числа

Позже в той же партии ни одного отдельного числа уже недостаточно. Оставшиеся мины числа в столбце 1, строке 7 должны находиться среди клеток, каждая из которых соседствует также с числом в столбце 2, строке 7. Оба числа требуют одинакового количества ещё не отмеченных мин: значит, все мины второго числа находятся в области первого, а остальные его скрытые соседние клетки безопасны; здесь таких клеток — 1.

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

Счётчик мин

Счётчик показывает количество мин за вычетом флажков. В конце партии он иногда даёт однозначный ответ: на этом другом поле уровня «Новичок» все флажки уже поставлены, а скрытых клеток осталось 1; счётчик показывает ноль, значит, оставшаяся клетка безопасна.

Когда приходится угадывать

Генератор приложения размещает мины случайным образом, не проверяя, можно ли решить поле логически. На поле ниже после 16 шагов логических рассуждений осталось 4 скрытых клеток, а на счётчике — 2 мин. Если перебрать все способы их размещения, найдётся 2 вариантов, соответствующих всем числам, и ни в одной клетке безопасность не гарантирована во всех вариантах: приходится выбирать.

Несколько ориентиров на случай, когда приходится угадывать:

  • сначала открывайте гарантированно безопасные клетки в других местах: новая область может устранить неопределённость;
  • предпочитайте клетку, которая даст информацию, если окажется безопасной, а не изолированную клетку;
  • принимайте поражение: проигрыш из-за вынужденного выбора ничего не говорит о качестве ваших рассуждений.