Bei einer Eingabe von vier Ganzzahlen x 1 , y 1 , x 2 und y 2 wird ausgegeben, ob ein weißer König im Schach (mit Koordinaten ( x 1 , y 1 )) einen schwarzen Bauern (mit Koordinaten ( x 2 , y 1 ) fangen könnte 2 )) und fange es, wenn sich der Bauer bewegt, um so schnell wie möglich zu einer Dame aufzusteigen.
Die Koordinaten der Tafel lauten wie folgt:
first coordinate (x)
12345678
1 .#.#.#.#
2 #.#.#.#.
3 .#.#.#.#
second 4 #.#.#.#.
coordinate 5 .#.#.#.#
(y) 6 #.#.#.#.
7 .#.#.#.#
8 #.#.#.#.
Angenommen, es ist weiß, um sich zu bewegen (der König ist am Zug), und beide Spieler spielen optimal (der König bewegt sich so schnell wie möglich, um den Bauern zu fangen, und der Bauer bewegt sich so schnell wie möglich, um zu befördern). Die Eingabekoordinaten sind immer unterschiedlich, und der Bauer beginnt niemals mit einer y-Koordinate von 8.
Der König bewegt sich in jeder Runde um ein Feld in eine beliebige Richtung (er kann sich diagonal bewegen), und der Bauer kann sich nur ein Feld vorwärts bewegen (seine y-Koordinate verringern), es sei denn, er befindet sich an seiner Anfangsposition (mit unserem Koordinatensystem, y-Koordinate von) 7), in diesem Fall kann es sich um zwei Felder vorwärts bewegen.
Die Eingabe kann als durch Leerzeichen / Komma getrennte Zeichenfolge, ein Array von Zeichenfolgen / Ganzzahlen oder vier Funktions- / Befehlszeilen- / usw.-Argumente erfolgen. Die Koordinaten können in der Reihenfolge angegeben werden, die für Sie am bequemsten ist (also ist es in Ordnung, Eingaben wie [y 2 , y 1 , x 1 , y 2 ] zu akzeptieren , solange sie konsistent sind). Die Ausgabe muss ein wahrer oder falscher Wert sein .
Da es sich um Code-Golf , der kürzeste Code in Bytes gewinnt.
Wahrheitstestfälle :
5 3 3 2
6 1 1 7
3 3 3 2
4 1 4 7
7 7 1 7
1 8 1 7
Falsche Testfälle :
6 4 3 2
8 8 1 7
3 4 3 2
1 8 1 7
, in dem der König zwei Felder ziehen kann, bevor der Bauer fängt. Ich denke, alle Antworten verstehen es jetzt falsch. Diese Situation macht das Problem sehr viel schwieriger.
x1 y1 x2 y2
?