चूंकि कल 4 मई है, कल आने वाले सभी बुरे चुटकुलों के लिए आपको मानसिक रूप से तैयार करने के लिए यहां थोड़ा स्टार वार्स पोस्ट किया गया है।
पृष्ठभूमि की कहानी
गैलेक्टिक सीनेट के एक सत्र के दौरान सभी सीनेटर एक n*nग्रिड में बैठे हैं । जारजार फ्लू का अचानक प्रकोप (जो हमेशा के लिए रहता है और संक्रमित को जारजार बिंक्स की तरह बोलने का कारण बनता है) कुछ सीनेटरों को संक्रमित कर देता है।
यहां एक 6*6ग्रिड के साथ एक उदाहरण दिया गया है जहां Xसंक्रमित सीनेटर हैं, इसी सूची है [[0,5],[1,4],[2,3],[2,1],[3,3],[3,0],[4,5],[0,5]]:
उसके बाद संक्रमण कदम दर कदम फैलने लगता है। दो सीनेटर सटे हुए हैं यदि वे ग्रिड पर एक पूरे किनारे को साझा करते हैं (यानी, ऊपर, नीचे, दाएं, बाएं), जिसका अर्थ है कि हम विकर्णों को बाहर करते हैं।
हम निष्कर्ष निकाल सकते हैं कि एक सीनेटर 2,3 या 4 अन्य सीनेटरों के निकट हो सकता है और संक्रमण के लिए निम्नलिखित नियमों का दावा कर सकता है:
- संक्रमित होने वाला सीनेटर हमेशा संक्रमित रहता है
- यदि वह पिछले चरण में 2 या अधिक संक्रमित सीनेटर के निकट था, तो एक सीनेटर एक कदम पर संक्रमित होता है
यहां पिछली ग्रिड के साथ एक उदाहरण दिया गया है जो संक्रमण के 2 पहले चरणों को दर्शाता है:
नेक्सट कदम के बाद सभी सीनेट संक्रमित हो जाएंगे
आपका कार्य
आपके कोड को ऐसी सूचियों की तुलना में अमान्य इनपुट को संभालने की आवश्यकता नहीं है, जो n*nनिर्देशांक से अलग हैं या अलग-अलग नहीं हैं।
nउदाहरण के लिए आपका कोड पूर्णांक (या एक बाइनरी ग्रिड या आपकी भाषा के अनुकूल कोई अन्य प्रारूप) के जोड़ों की सूची के रूप में ले जाएगा और एक पूर्णांक (जो किसी सूची के अलावा किसी अन्य प्रारूप का उपयोग करने पर अनावश्यक हो सकता है), उदाहरण के लिए:
8 [[1,2],[1,1],[7,4],[2,7],[4,3]]
n ग्रिड के किनारे होने का मतलब है कि ग्रिड एक * n ग्रिड होगा, और पूर्णांकों के जोड़ों की सूची, जो संक्रमित संक्रमित सीनेटरों की कोशिकाओं के निर्देशांक हैं।
ग्रिड के नीचे बाईं ओर [0,0] है और ऊपर दाईं ओर [n-1, n-1] है। शीर्ष बाईं ओर [0, n-1] है।
आपका कोड एक पूर्णांक आउटपुट करना चाहिए:
-1 या एक गलत मान या एक त्रुटि यदि पूरी ग्रिड पूरी तरह से संक्रमित नहीं होगी या पूरे ग्रिड को संक्रमित करने के लिए आवश्यक चरणों की न्यूनतम संख्या
परीक्षण के मामलों
6 [[0,5],[1,4],[2,3],[2,1],[3,3],[3,0],[4,5],[5,0]] => 7
4 [[1,1][0,3][1,0][3,0][3,3]] => 9
याद रखें कि यह कोड-गोल्फ है , इस प्रकार बाइट्स जीत में सबसे छोटा जवाब है!
n? क्या कोई अधिकतम मूल्य है?
CellularAutomaton...

