З урахуванням введення чотирьох цілих чисел x 1 , y 1 , x 2 та y 2 , виведіть, чи може білий король у шахах (з координатами ( x 1 , y 1 )) міг ловити чорну пішаку (з координатами ( x 2 , y 2 )) і захопіть його, якщо пішак рухається, щоб просунути до королеви якомога швидше.
Координати дошки такі:
first coordinate (x)
12345678
1 .#.#.#.#
2 #.#.#.#.
3 .#.#.#.#
second 4 #.#.#.#.
coordinate 5 .#.#.#.#
(y) 6 #.#.#.#.
7 .#.#.#.#
8 #.#.#.#.
Припустимо, що білі рухаються (черга короля) і що обидва гравці грають оптимально (король рухатиметься якомога швидше, щоб зловити пішака, а пішак рухатиметься якомога швидше для просування). Координати вводу завжди будуть чіткими, і пішак ніколи не починатиметься з y-координати 8.
Король рухається по одному квадрату в будь-якому напрямку кожен поворот (він може рухатися по діагоналі), і пішак може рухатись лише на один простір вперед (зменшити його координату y), якщо тільки він не знаходиться у вихідному положенні (з нашою системою координат, y-координатою 7), і в цьому випадку він може перемістити два проміжки вперед.
Вхід може бути поданий у вигляді рядка, розділеного пробілом / комами, масиву рядків / цілих чисел або чотирьох аргументів функції / командного рядка / тощо. Координати можуть бути задані в тому порядку, який є найзручнішим / голішим (так, приймати введення як [y 2 , y 1 , x 1 , y 2 ] нормально, доки це відповідає). Вихід повинен бути правдоподібним або хибним значенням .
Оскільки це код-гольф , виграє найкоротший код у байтах.
Пробні кейси :
5 3 3 2
6 1 1 7
3 3 3 2
4 1 4 7
7 7 1 7
1 8 1 7
Тестові випадки фальшивості :
6 4 3 2
8 8 1 7
3 4 3 2
1 8 1 7
, коли король захоплює перед тим, як пішак може перемістити два пробіли. Я думаю, що всі відповіді зараз неправильно відповідають. Така ситуація значно ускладнює проблему.
x1 y1 x2 y2
?