Come può Python verificare se una torre può muoversi tra due case in una mossa?
x1 == x2 or y1 == y2.Domanda
Date due case distinte della scacchiera, determinare se una torre può muoversi dalla prima alla seconda in una mossa. Ignora le ostruzioni di altri pezzi.
Ingresso
Quattro numeri interi da 1 a 8: il file e il rango del primo quadrato, seguiti da quelli del secondo. I numeri possono trovarsi su righe separate.
Uscita
Stampa YES se lo spostamento è possibile; altrimenti stampa NO.
Esempi
| Immettere i numeri | Uscita |
|---|---|
| 6 6 8 8 | NO |
| 1 4 7 4 | SI |
| 2 6 2 1 | SI |
Spiegazione
Una torre si muove verticalmente o orizzontalmente. Controlla se le coordinate del file o le coordinate del rango sono uguali. La dichiarazione garantisce che i quadrati siano distinti.
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() gestisce sia gli spazi che le interruzioni di riga. Per le quattro coordinate fisse, il programma utilizza l'ora O(1) e memoria aggiuntiva.
Piattaforme
- MAXIMUM
