← Tüm sorular
OrtaProgramlama

Python bir kalenin tek hamlede iki kare arasında hareket edip edemeyeceğini nasıl kontrol edebilir?

Kısa cevap
Kareler bir dosyayı veya sıralamayı paylaşıyorsa kale bunu yapabilir: x1 == x2 or y1 == y2.

Soru

İki farklı satranç tahtası karesi verildiğinde, bir kalenin birinciden ikinciye tek hamlede hareket edip edemeyeceğini belirleyin. Diğer parçaların neden olduğu engelleri dikkate almayın.

Giriş

1'den 8'e kadar dört tam sayı: ilk karenin dosyası ve sırası, ardından ikincininkiler. Numaralar ayrı satırlarda olabilir.

Çıkış

Taşıma mümkünse YES yazdırın; aksi halde NO yazdırın.

Örnekler

Numaraları girin Çıkış
6 6 8 8 HAYIR
1 4 7 4 EVET
2 6 2 1 EVET

Açıklama

Kale dikey veya yatay olarak hareket eder. Dosya koordinatlarının veya sıra koordinatlarının eşit olup olmadığını kontrol edin. Bu ifade, karelerin farklı olduğunu garanti eder.

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() hem boşlukları hem de satır sonlarını yönetir. Sabit dört koordinat için program O(1) zamanını ve ek belleği kullanır.

Koşullu ifadelerPythonSatranç

Platformlar

  • MAXIMUM

Hemen indir, kendi görevlerin için ücretsiz dene!

Windows için indir
10 15 ücretsiz kredi • Kredi kartı gerekmezSürüm: Yükleniyor…

Kurulum yok - indir ve çalıştır. Kayıt yok - Google ile giriş yap.