No xadrez, uma dama pode se mover tanto quanto o tabuleiro se estende na horizontal, na vertical ou na diagonal.
Dado um tabuleiro de xadrez do tamanho NxN, imprima quantas posições possíveis N rainhas podem ser colocadas no tabuleiro e não consiga se acertar em um movimento.
code-challenge
combinatorics
chess
Dan McGrath
fonte
fonte
Respostas:
Aqui está uma solução (originalmente desta entrada do blog ) em que construo uma descrição lógica da solução na forma conjuntiva normal, que é então resolvida pelo Mathematica:
Aqui está a saída:
fonte
Rubi
Como não vejo umagolf
etiqueta, presumo que seja apenas um desafio.Aqui está uma implementação do algoritmo mencionado na Wikipedia. Não é por mim, é na Rosetta Stone e pode ser encontrada aqui
CommWikied esta resposta.
fonte
Python 2,
190185 caracteresEu apenas assumi o código de etiqueta de golfe, mesmo que não estivesse lá. N é lido a partir de stdin, o programa calcula soluções até n = 10 em tempo aceitável.
fonte
Groovy
Fornece uma lista de todas as soluções queen como esta:
Para representação gráfica, adicione:
que fica assim:
fonte