Показать сообщение отдельно
Старый 31.01.2008, 17:23
GreatRash вне форума Посмотреть профиль Отправить личное сообщение для GreatRash Найти все сообщения от GreatRash
  № 6  
Ответить с цитированием
GreatRash

Регистрация: Jun 2007
Сообщений: 118
По вашей ссылке нашел следующий алгоритм:
Цитата:
1)проверить доску, и посчитать количество знаков на каждой диагонали.
2)если есть диагональ, содержащая только одну пустую клетк, ход делается на неё. Если таких несколько (трудно представить, как до такого могло дойти, но мало ли) - на общую пустую клетку либо на случайную.
3)если есть есть несколько диагоналей с двумя пустыми клетками, ход делается на клетку, которую пересекает наибольшее число диагоналей этого типа. (с одной занятой клеткой).
4)если все предыдущеие пункты не срабатывают, ход делается на центральную клетку, или (если хотите дать шанс на победу) - на случайную.
Сразу застопорился на первом пункте. А именно непонятно как узнать, что 2 клетки на одной диагонали заняты?
Попутно возник вопрос как в AS создать массив вида array(key=>value)