Морской бой
시간 제한15초메모리 제한1024 MB
길이 N인 1차원 보드에 길이 K인 배 T척을 배치할 때, 모든 유효한 배치에서 배가 차지하는 칸을 판정하고 그러한 칸의 개수를 갱신하는 서버를 구현한다.
문제
В рамках Чемпионата Урала планируется проведение турнира стратегий по игре <<Морской бой 1D>>.
Игра проходит на поле, которое представляет собой прямоугольник размером клеток. На поле расставляются кораблей, каждый из которых имеет вид прямоугольника размером клеток. Расстановка кораблей на поле является допустимой, если различные корабли не имеют общих клеток и разделены хотя бы одной пустой клеткой. Игровая программа осуществляет выстрелы в клетки поля, а сервер сообщает, является ли выстрел промахом или попаданием в корабль.
В процессе игры про некоторые клетки становится известно, что при любой допустимой расстановке кораблей они принадлежат какому-либо из кораблей. Назовём такие клетки заведомо занятыми.
Игра заканчивается после первого попадания в корабль. Сервер пытается добиться того, чтобы игра продолжалась как можно дольше. Для этого он не фиксирует расстановку кораблей в начале игры, а рассматривает все возможные допустимые расстановки и сообщает о попадании, только если клетка, в которую осуществляется выстрел, является заведомо занятой.
Требуется написать программу, исполняющую роль сервера для этой игры. Сервер сначала загружает параметры игры, а затем взаимодействует с игровой программой, сообщая после каждого выстрела информацию о промахе или попадании, а также количество заведомо занятых клеток.
제한
힌트
Игра происходит на поле из клеток, на котором расставляются корабля, состоящие из -х клеток каждый. Все допустимые расстановки кораблей приведены на рис. 1. Клетки, отмеченные <<#>>, заведомо заняты. Таких клеток .

Рис. 1. Допустимые расстановки кораблей в начале игры.
Первый выстрел производится в клетку с номером . Это выстрел считается промахом, остаются допустимыми расстановки кораблей, приведенные на рис. 2. Теперь клеток заведомо заняты.

Рис 2. Допустимые расстановки кораблей после первого выстрела.
Второй выстрел производится в клетку с номером , эта клетка не может быть заведомо занятой, поэтому игра завершается.