Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Ход короля 🌶️
- Даны две различные клетки шахматной доски. Напишите программу, которая определяет, может ли король попасть с первой клетки на вторую одним ходом. Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки. Программа должна вывести «YES», если из первой клетки ходом короля можно попасть во вторую, или «NO» в противном случае.
- Формат входных данных
- На вход программе подаётся четыре числа от 1 до 8.
- Формат выходных данных
- Программа должна вывести текст в соответствии с условием задачи.
- Примечание. Шахматный король ходит по горизонтали, вертикали и диагонали, но только на 1 клетку.
- Решения:
- a, b, c, d = int(input()), int(input()), int(input()), int(input())
- if (-1 <= a - c <= 1) and (-1 <= b - d <= 1):
- print('YES')
- else:
- print('NO')
- Альтернативное с форума
- a = int(input())
- b = int(input())
- a1 = int(input())
- b1 = int(input())
- if 1 <= a <= 8 and 1 <= b <= 8:
- if a == b == 1:
- if a1 == 2 and b1 == 1 or a1 == 2 and b1 == 2 or a1 == 1 and b1 == 2:
- print('YES')
- else: print('NO')
- elif a == 8 and b == 1:
- if a1 == 7 and b1 == 1 or a1 == 7 and b1 == 2 or a1 == 8 and b1 == 2:
- print('YES')
- else: print('NO')
- elif a == 1 and b == 8:
- if a1 == 1 and b1 == 7 or a1 == 2 and b1 == 8 or a1 == 2 and b1 == 7:
- print('YES')
- else: print('NO')
- elif a == b == 8:
- if a1 == 7 and b1 == 8 or a1 == 8 and b1 == 7 or a1 == b1 == 7:
- print('YES')
- else: print('NO')
- elif 2 <= a <= 7 and b == 1:
- if a1 == a - 1 and b1 == b or a1 == a + 1 and b1 == b or a1 == a - 1 and b1 == b + 1 or a1 == a and b1 == b + 1 or a1 == a + 1 and b1 == b + 1:
- print('YES')
- else: print('NO')
- elif a == 1 and 2 <= b <= 7:
- if a1 == a and b1 == b - 1 or a1 == a and b1 == b + 1 or a1 == a + 1 and b1 == b - 1 or a1 == a + 1 and b1 == b or a1 == a + 1 and b1 == b + 1:
- print('YES')
- else: print('NO')
- elif 2 <= a <= 7 and b == 8:
- if a1 == a - 1 and b1 == b or a1 == a + 1 and b1 == b or a1 == a - 1 and b1 == b - 1 or a1 == a and b1 == b - 1 or a1 == a + 1 and b1 == b - 1:
- print('YES')
- else: print('NO')
- elif a == 8 and 2 <= b <= 7:
- if a1 == a and b1 == b - 1 or a1 == a and b1 == b + 1 or a1 == a - 1 and b1 == b - 1 or a1 == a - 1 and b1 == b or a1 == a - 1 and b1 == b + 1:
- print('YES')
- else: print('NO')
- elif 2 <= a <= 7 and 2 <= b <= 7:
- if a - 1 <= a1 <= a + 1 and b - 1 <= b1 <= b + 1:
- print('YES')
- else: print('NO')
- else:
- print('NO')
- # https://stepik.org/lesson/265083/step/15?discussion=3011400&reply=4853812&thread=solutions&unit=246031
Advertisement
Advertisement
Advertisement
RAW Paste Data
Copied
Advertisement