← Wszystkie pytania
ŚrednioProgramowanie

Jak Python może sprawdzić, czy wieża może poruszać się pomiędzy dwoma polami jednym ruchem?

Krótka odpowiedź
Wieża może to zrobić, jeśli kwadraty mają ten sam plik lub rangę: x1 == x2 or y1 == y2.

Pytanie

Mając dwa różne pola szachownicy, określ, czy wieża może przejść z pierwszego do drugiego w jednym ruchu. Ignoruj ​​przeszkody powodowane przez inne elementy.

Wejście

Cztery liczby całkowite od 1 do 8: plik i ranga pierwszego kwadratu, a następnie te z drugiego. Liczby mogą znajdować się w oddzielnych wierszach.

Wyjście

Wydrukuj YES, jeśli przeprowadzka jest możliwa; w przeciwnym razie wydrukuj NO.

Przykłady

Wprowadź liczby Wyjście
6 6 8 8 NIE
1 4 7 4 TAK
2 6 2 1 TAK

Wyjaśnienie

Wieża porusza się pionowo lub poziomo. Sprawdź, czy współrzędne pliku lub współrzędne rangi są równe. Stwierdzenie gwarantuje, że kwadraty są odrębne.

import sys

x1, y1, x2, y2 = map(int, sys.stdin.read().split())
print('YES' if x1 == x2 or y1 == y2 else 'NO')

sys.stdin.read().split() obsługuje zarówno spacje, jak i podziały wierszy. Dla stałych czterech współrzędnych program wykorzystuje czas O(1) i dodatkową pamięć.

PythonSzachyWyrażenia warunkowe

Platformy

  • MAXIMUM

Pobierz teraz i wypróbuj za darmo przy swoich zadaniach!

Pobierz dla Windows
10 15 darmowych kredytów • Karta kredytowa nie jest wymaganaWersja: Ładowanie…

Bez instalacji - pobierz i uruchom. Bez rejestracji - zaloguj się przez Google.