В шахматах королева может двигаться так далеко, как доска проходит горизонтально, вертикально или по диагонали.
Учитывая шахматную доску размером NxN, распечатайте, сколько возможных позиций N королев может быть размещено на доске и не сможет ударить друг друга за 1 ход.
code-challenge
combinatorics
chess
Дэн МакГрат
источник
источник
Ответы:
Вот решение (первоначально из этой записи в блоге ), где я строю логическое описание решения в конъюнктивной нормальной форме, которое затем решается Mathematica:
Вот вывод:
источник
Рубин
Я не вижуgolf
тега, поэтому я предполагаю, что это просто вызов.Вот реализация Алгоритма, упомянутого в Википедии. Это не я, это в Rosetta Stone и можно найти здесь
CommWikied этот ответ.
источник
Python 2,
190185 символовЯ просто принял кодовый тег для гольфа, хотя его там не было. N считывается из стандартного ввода, программа рассчитывает решения до n = 10 в приемлемое время.
источник
Groovy
Предоставляет список всех решений queen:
Для графического представления добавьте:
который выглядит так:
источник