Dört tamsayı x 1 , y 1 , x 2 ve y 2 girdi alındığında , satrançtaki beyaz bir kralın (koordinatlarla ( x 1 , y 1 )) siyah bir piyon yakalayıp yakalayamayacağını (koordinatlarla ( x 2 , y) gösterir. 2 )) ve piyon bir kraliçeye olabildiğince çabuk terfi etmek için hareket ediyorsa onu yakalayın.
Kurulun koordinatları aşağıdaki gibidir:
first coordinate (x)
12345678
1 .#.#.#.#
2 #.#.#.#.
3 .#.#.#.#
second 4 #.#.#.#.
coordinate 5 .#.#.#.#
(y) 6 #.#.#.#.
7 .#.#.#.#
8 #.#.#.#.
Hareket etmenin beyaz olduğunu (kralın sırası) ve her iki oyuncunun da en iyi şekilde oynadığını varsayalım (kral, piyonu yakalamak için mümkün olduğu kadar hızlı hareket edecek ve piyon teşvik etmek için olabildiğince hızlı hareket edecektir). Giriş koordinatları her zaman farklı olacak ve piyon asla 8'lik bir y koordinatı ile başlamayacak.
Kral her dönüşte herhangi bir yönde bir kare hareket eder (diyagonal olarak hareket edebilir) ve piyon, başlangıç pozisyonunda değilse (koordinat sistemimizle y koordinatındayken), sadece bir boşluk ileri alabilir (y koordinatını düşürür). 7), bu durumda iki boşluk ileri hareket edebilir.
Girdi, boşluk / virgülle ayrılmış bir dize, bir dizi / tamsayı dizisi veya dört işlev / komut satırı / etc argümanı olarak verilebilir. Koordinatlar, hangi sıranın en uygun / golfyere uygun olduğunu gösterebilir (bu nedenle, girişi [y 2 , y 1 , x 1 , y 2 ] olarak kabul etmek, tutarlı olduğu sürece tamamdır). Çıktının bir ya da sahte değeri olması gerekir .
Bu kod golf olduğundan, bayttaki en kısa kod kazanır.
Truthy test durumları :
5 3 3 2
6 1 1 7
3 3 3 2
4 1 4 7
7 7 1 7
1 8 1 7
Sahte test durumları :
6 4 3 2
8 8 1 7
3 4 3 2
1 8 1 7
Kralın piyondan önce yakaladığı test alanını iki boşluk taşıyabilirim. Sanırım tüm cevaplar şimdi yanlış anladı. Bu durum sorunu daha da zorlaştırıyor.
x1 y1 x2 y2
mi olmalı ?