Срочно нужна помощь в решении задачи на C++

Гость19 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
21.12.2005

Нужна помощь в решении задачи. Работу нужно сделать в ближайшие 2-3 дня, т.е. не позднее 24.12.2005

ICQ 283-895-859

Разработать программу следующей игры (рабочее название «Аннексия-6»). Игровое поле – область на плоскости, разбитая решеткой, состоящей из правильных шестиугольников, на ячейки. Размер области составляет М ячеек по горизонтали и N по вертикали. Каждая ячейка покрашена в один из К заданных цветов. Левая верхняя и правая нижняя ячейки имеют различный цвет. Цвет остальных ячеек выбирается произвольно. Две ячейки, имеющие один цвет и общую сторону, считаются принадлежащими одной области. Все игровое поле, таким образом, разбито на несколько одноцветных областей.

Правила игры. Играют двое. За первым закреплена область, содержащая левую верхнюю ячейку, а за вторым – область, содержащая правую нижнюю. Игроки ходят по очереди. Делая ход, игрок перекрашивает свою область в один из цветов, за исключением своего цвета и цвета противника (т.е. перекрасить надо обязательно)(в нейтральный цвет тоже нельзя). В результате хода к области игрока прибавляются все смежные с ней (хотя бы по одной стороне одной ячейки) области того цвета, который выбрал игрок (если таковые области имеются).

Цель игры – включить в свою область как можно больше ячеек.

Игра заканчивается после того, как все поле оказывается разбито на две области или если после 4-х ходов область ни одного из игроков не увеличивается. Побеждает игрок, в области которого больше ячеек.

Необходимо разработать систему для игры в «Аннексию-6» как для двух игроков друг против друга, так и для одного игрока против компьютера.

Заявки фрилансеров