Trilhas
/
TypeScript
TypeScript
/
Exercícios
/
Ataque da rainha
Ataque da rainha

Ataque da rainha

Difícil

Instruções

Dadas as posições de duas rainhas em um tabuleiro de xadrez, indique se elas estão posicionadas de modo que possam atacar uma à outra.

No jogo de xadrez, uma rainha pode atacar peças que estejam na mesma linha, coluna ou diagonal.

Um tabuleiro de xadrez pode ser representado por um array de 8 por 8.

Então, se disserem que a rainha branca está em c5 (com índice começando em zero: coluna 2, linha 3) e a rainha preta em f2 (com índice começando em zero: coluna 5, linha 6), você sabe que a configuração é assim:

Um tabuleiro de xadrez com duas rainhas. Setas que saem da rainha em c5 indicam as possíveis direções de captura ao longo de colunas, linhas e diagonais.

Você também consegue responder se as rainhas podem atacar uma à outra. Nesse caso, a resposta seria sim, elas podem, porque as duas peças compartilham uma diagonal.

Créditos

A imagem do tabuleiro de xadrez foi feita por habere-et-dispertire usando LaTeX e o pacote chessboard de Ulrike Fischer.

Implementação

Uma rainha deve ser colocada em uma posição válida do tabuleiro. Duas rainhas não podem ocupar a mesma posição.

Se nenhuma posição for informada, as rainhas ficam nas posições iniciais padrão. É a linha de baixo (1) para a rainha branca e a linha de cima (8) para a rainha preta. As duas rainhas começam na quarta coluna (d).

  a b c d e f g h
8 _ _ _ B _ _ _ _ 8
7 _ _ _ _ _ _ _ _ 7
6 _ _ _ _ _ _ _ _ 6
5 _ _ _ _ _ _ _ _ 5
4 _ _ _ _ _ _ _ _ 4
3 _ _ _ _ _ _ _ _ 3
2 _ _ _ _ _ _ _ _ 2
1 _ _ _ W _ _ _ _ 1
  a b c d e f g h
Editar via GitHub O link abre em uma nova janela ou aba
TypeScript Exercism

Tudo pronto para começar Ataque da rainha?

Crie sua conta no Exercism para aprender e dominar TypeScript com 108 exercícios e mentoria humana de verdade, tudo de graça.