Старожил
Сообщения: 198
Благодарности: 51
|
Профиль
|
Отправить PM
| Цитировать
Ну вам по сути необходимо определить следующие необходимые и достаточные критерия мата:
1. Королю шах.
2. Все соседние клетки возле короля под ударом / заняты фигурами.
3. Нельзя снять фигуру, которая организует шах. То есть нельзя туда пойти фигурой. (в.т.ч королем)
4. Нельзя закрыться от шаха. Т.е. нельзя пойти на соответсвующую линию / диагональ. Этот случай отметается, если:
1). если линий/диагоналей несколько одновременно;
2). это конь или пешка;
3). одна линия/диагональ + конь.
По реализации:
1. Опеределить клетки, которые нам интересны. Место короля, вокруг короля, линии/диагональ удара, фигура, организующая шах.
2. Можно ли осуществить ход какой-либо фигурой в интересные клетки (клетки вокруг короля рассмотреть только для короля). Если можно, то не мат.
Вроде так. Может чего и упустил.
|
Последний раз редактировалось PhilB, 27-05-2012 в 14:29.
Отправлено: 14:24, 27-05-2012
| #2
|