Дано:
- Поле для игры в «морской бой» имеет форму квадрата 8 х 8.
- Корабль имеет форму прямоугольника 1 х 4.
Найти:
а) Наименьшее количество выстрелов, чтобы ранить корабль.
б) Наименьшее количество выстрелов, чтобы однозначно определить положение корабля.
Решение:
а) Чтобы ранить корабль размером 1 х 4, достаточно попасть в любую из четырёх клеток, которые занимают его в горизонтальном или вертикальном положении.
Наименьшее количество выстрелов, чтобы гарантированно ранить корабль, составляет 4. Это объясняется тем, что выстрелы должны быть размещены так, чтобы покрыть все возможные положения корабля (включая его горизонтальные и вертикальные варианты).
б) Чтобы однозначно определить положение корабля размером 1 х 4 на поле 8 х 8, необходимо:
- Проверить каждую горизонтальную и вертикальную позицию корабля.
- На поле 8 х 8 можно разместить прямоугольник 1 х 4 горизонтально в 8 позициях по вертикали и 5 позициях по горизонтали, всего 8 * 5 = 40 уникальных позиций.
- Для полного покрытия всех возможных позиций корабля на поле нужно минимизировать количество выстрелов, распределяя их так, чтобы ни одно из возможных положений не осталось непроверенным.
Оптимальный способ состоит в том, чтобы выстрелы располагались по чередующимся клеткам, обеспечивая, что любые возможные позиции корабля будут затронуты.
На практике для 1 х 4 можно использовать тактику шахматного расположения (например, каждая вторая клетка):
В общей сложности это 16 выстрелов для гарантии покрытия всех 8 х 8 позиций таким образом, чтобы каждый возможный отрезок корабля был проверен.
Ответ:
а) Наименьшее количество выстрелов, чтобы ранить корабль, равно 4.
б) Наименьшее количество выстрелов, чтобы однозначно определить положение корабля, равно 16.