Недавно на хабре была статья про альтернативные крестики-нолики. Для не менее популярной у детей игры «Морской бой» мы тоже придумали продвинутый вариант, который позволяет надеяться не только на удачу, но и на умственные способности. Крайне незначительное изменение открывает целый спектр возможностей для применения логики.
И игровое поле, и набор кораблей, и правила их расстановки ничем не отличается от стандартного – на квадратном поле (хотя никто и не запрещает применять поля других форм) нужно разместить один четырехклеточный, два трехклетточных, три двуклеточных и четыре одноклеточных корабля, которые не касаются друг друга даже углом. Каждый выстрел – это указание координат клетки. Если в клетке находится корабль, то, как и обычно, стреляющему сообщается «убил» или «ранил». А вот если в клетке корабля нет, то помимо стандартного «мимо», сообщается еще и число, которое означает количество соседних клеток, занятых кораблями (как в известной игре «Сапер»). И это единственное отличие в правилах.
В результате изменения правил каждый выстрел мимо дает кучу дополнительной информации, которой надо суметь грамотно воспользоваться. Хорошо, если сообщено число 0 – это означает, что можно смело вычеркнуть восемь соседних клеток, ну а если сообщенная цифра другая, то необходимо крепко напрячь
Рассмотрим небольшой пример (ситуация часто случается в обычной игре) – нам удалось быстро подбить четырехтрубник, но пытаясь определить его продолжение мы один раз промахнулись. Полученная во время промаха тройка – просто кладезь информации. Сразу после четырехтрубника мы можем, не останавливаясь, топить следующий корабль серией выстрелов b1, b2, b3. Этот случай, конечно же, прост, но бывают и гораздо более сложные рассуждения. Желающие могут доиграть эту партию:
Вообще морской бой является один из любимых объектов при создании разного рода головоломок. Небольшой, хорошо знакомый с детства набор позволяет получить огромное многообразие вариантов. Наиболее известный вариант головоломки – восстановить расположение кораблей, зная количество занятых клеток во всех строках и столбцах, – довольно часто публикуется в печати. Но для игры он подходит не очень, а вот «саперный» вариант вливается в игру очень органично.
Ну а напоследок предлагаю задачу. В партии уже сделано несколько выстрелов и, о! ужас, все мимо. Постарайтесь подбить все корабли противника, больше не промахиваясь. Ответы (перечисление координат выстрелов) принимаю в личку. Первым пяти правильно ответившим обещаю плюсик в карму.
Автор: bay73