ट्रैक
/
TypeScript
TypeScript
/
अभ्यास
/
रानी का हमला
रानी का हमला

रानी का हमला

कठिन

निर्देश

शतरंज के बोर्ड पर दो रानियों की स्थिति दी गई है। बताइए कि वे ऐसी जगहों पर रखी हैं या नहीं कि एक-दूसरे पर हमला कर सकें।

शतरंज के खेल में एक रानी उन मोहरों पर हमला कर सकती है जो उसी पंक्ति, स्तंभ या विकर्ण पर हों।

शतरंज के बोर्ड को 8 गुणा 8 के ऐरे के रूप में दर्शाया जा सकता है।

अगर आपको बताया जाए कि सफेद रानी c5 पर है (शून्य से गिनती शुरू करने पर स्तंभ 2, पंक्ति 3) और काली रानी f2 पर है (शून्य से गिनती शुरू करने पर स्तंभ 5, पंक्ति 6), तो आप जान जाते हैं कि बोर्ड कुछ इस तरह दिखता है:

दो रानियों वाला शतरंज का बोर्ड।  पर रखी रानी से निकलते तीर संभावित हमले की दिशाएँ दिखाते हैं, चाहे वे स्तंभ, पंक्ति या विकर्ण के साथ हों।

आप यह भी बता सकते हैं कि क्या ये रानियाँ एक-दूसरे पर हमला कर सकती हैं। इस स्थिति में जवाब हाँ होगा, क्योंकि दोनों रानियाँ एक ही विकर्ण पर हैं।

श्रेय

शतरंज के बोर्ड की यह तस्वीर habere-et-dispertire ने LaTeX और Ulrike Fischer के chessboard package की मदद से बनाई है।

कार्यान्वयन

रानी को बोर्ड पर किसी मान्य जगह पर ही रखा जाना चाहिए। दो रानियाँ एक ही जगह पर नहीं रह सकतीं।

अगर कोई जगह नहीं बताई गई हो, तो रानियाँ अपनी पहले से तय शुरुआती जगहों पर रहती हैं। यानी सफेद रानी के लिए सबसे नीचे की पंक्ति (1) और काली रानी के लिए सबसे ऊपर की पंक्ति (8)। दोनों रानियाँ चौथे कॉलम (d) से शुरू करती हैं।

  a b c d e f g h
8 _ _ _ B _ _ _ _ 8
7 _ _ _ _ _ _ _ _ 7
6 _ _ _ _ _ _ _ _ 6
5 _ _ _ _ _ _ _ _ 5
4 _ _ _ _ _ _ _ _ 4
3 _ _ _ _ _ _ _ _ 3
2 _ _ _ _ _ _ _ _ 2
1 _ _ _ W _ _ _ _ 1
  a b c d e f g h
GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
TypeScript Exercism

रानी का हमला शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और TypeScript को 108 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।