ধরুন, চেসবোর্ডে রানি (Queen) এবং Опপোনেন্ট (Opponent) এর দুটি কোয়ার্ডিনেট Q এবং O দেওয়া হয়েছে। আমাদের যাচাই করতে হবে যে রানি কি অপোনেন্টকে আক্রমণ করতে পারে। রানি একই রো, একই কলাম এবং ডায়াগোনালি আক্রমণ করতে পারে।
যেমন, ইনপুট Q = (1, 1), O = (4, 4) হলে আউটপুট হবে True, কারণ রানি ডায়াগোনালি (4,4)-এ যেতে পারে।
সমাধানের ধাপসমূহ
- যদি
Q[0] == O[0](একই রো), তবে True। - যদি
Q[1] == O[1](একই কলাম), তবে True। - যদি
abs(Q[0] - O[0]) == abs(Q[1] - O[1])(ডায়াগোনাল), তবে True। - অন্যথায় False।
উদাহরণ কোড
def solve(Q, O):
if Q[0] == O[0]:
return True
if Q[1] == O[1]:
return True
if abs(Q[0] - O[0]) == abs(Q[1] - O[1]):
return True
return False
Q = (1, 1)
O = (4, 4)
print(solve(Q, O))
ইনপুট
(1, 1), (4, 4)
আউটপুট
True