Dada uma entrada de quatro números inteiros x 1 , y 1 , x 2 e y 2 , determine se um rei branco no xadrez (com coordenadas ( x 1 , y 1 )) poderia pegar um peão preto (com coordenadas ( x 2 , y 2 )) e capturá-lo se o peão estiver se movendo para promover a uma rainha o mais rápido possível.
As coordenadas do quadro são as seguintes:
first coordinate (x)
12345678
1 .#.#.#.#
2 #.#.#.#.
3 .#.#.#.#
second 4 #.#.#.#.
coordinate 5 .#.#.#.#
(y) 6 #.#.#.#.
7 .#.#.#.#
8 #.#.#.#.
Suponha que seja branco se mover (a vez do rei) e que ambos os jogadores joguem da melhor maneira (o rei se moverá o mais rápido possível para pegar o peão, e o peão se moverá o mais rápido possível para promover). As coordenadas de entrada sempre serão distintas e o peão nunca começará com uma coordenada y de 8.
O rei move um quadrado em qualquer direção a cada turno (pode se mover na diagonal), e o peão pode mover apenas um espaço para a frente (diminuir sua coordenada y), a menos que esteja na sua posição inicial (com nosso sistema de coordenadas, coordenada y de 7), caso em que pode mover dois espaços para a frente.
A entrada pode ser fornecida como uma cadeia de caracteres separada por espaço em branco / vírgula, uma matriz de cadeias / números inteiros ou quatro argumentos de função / linha de comando / etc. As coordenadas podem ser dadas na ordem que for mais conveniente / golfe (assim, aceitar entrada como [y 2 , y 1 , x 1 , y 2 ] é bom desde que seja consistente). A saída deve ser um valor verdadeiro ou falso .
Como esse é o código-golfe , o código mais curto em bytes vence.
Casos de teste de verdade :
5 3 3 2
6 1 1 7
3 3 3 2
4 1 4 7
7 7 1 7
1 8 1 7
Casos de teste de falsidade :
6 4 3 2
8 8 1 7
3 4 3 2
1 8 1 7
, onde o rei captura antes que o peão possa mover dois espaços. Eu acho que todas as respostas agora entendem errado. Essa situação dificulta muito o problema.
x1 y1 x2 y2
?