Dato un input di quattro numeri interi x 1 , y 1 , x 2 e y 2 , viene emesso se un re bianco negli scacchi (con coordinate ( x 1 , y 1 )) potrebbe catturare un pedone nero (con coordinate ( x 2 , y 2 )) e catturalo se il pedone si sta muovendo per promuovere una regina il più velocemente possibile.
Le coordinate del tabellone sono le seguenti:
first coordinate (x)
12345678
1 .#.#.#.#
2 #.#.#.#.
3 .#.#.#.#
second 4 #.#.#.#.
coordinate 5 .#.#.#.#
(y) 6 #.#.#.#.
7 .#.#.#.#
8 #.#.#.#.
Supponiamo che si muova in bianco (il turno del re) e che entrambi i giocatori giochino in modo ottimale (il re si muoverà il più velocemente possibile per catturare il pedone e il pedone si sposterà il più velocemente possibile per promuovere). Le coordinate di input saranno sempre distinte e il pedone non inizierà mai con una coordinata y di 8.
Il re si sposta di un quadrato in ogni direzione ogni turno (può muoversi in diagonale) e il pedone può muovere solo di uno spazio in avanti (diminuisce la sua coordinata y), a meno che non sia nella sua posizione iniziale (con il nostro sistema di coordinate, coordinata y di 7), nel qual caso può spostare in avanti di due spazi.
L'input può essere dato come una stringa separata da spazi bianchi / virgola, una matrice di stringhe / numeri interi o quattro argomenti di funzione / riga di comando / ecc. Le coordinate possono essere fornite in qualsiasi ordine sia più conveniente / golfy (quindi, accettare input come [y 2 , y 1 , x 1 , y 2 ] va bene purché sia coerente). L'output deve essere un valore di verità o falsa .
Dato che si tratta di code-golf , vince il codice più breve in byte.
Casi di prova veritieri :
5 3 3 2
6 1 1 7
3 3 3 2
4 1 4 7
7 7 1 7
1 8 1 7
Casi di prova falsi :
6 4 3 2
8 8 1 7
3 4 3 2
1 8 1 7
, in cui il re cattura prima che il pedone possa spostare due spazi. Penso che ora tutte le risposte abbiano sbagliato. Questa situazione rende il problema molto più difficile.
x1 y1 x2 y2
?