ज्यादातर लोग ट्रोप से परिचित हैं कि वे भेड़ को सोने के लिए गिना रहे हैं। भेड़ का एक झुंड है, उनमें से कुछ एक बाड़ पर कूदते हैं, और आप भेड़ को कूदते हुए गिनते हैं। माना जाता है, यह आपके दिमाग को शांत करने में मदद करता है और आपको नींद जैसी स्थिति में ले जाता है जिससे आप सो जाएंगे।
यहां दाईं ओर एक ASCII भेड़ का सामना करना पड़ रहा है, जिसे गिना जा रहा है:
'00^>
||
यहाँ एक ASCII भेड़ एक बाड़ पर कूद रही है:
'00^>
/\
++
यहाँ एक बाईं ओर है, पहले से ही गिना गया है:
<^00'
||
चुनौती
दो इनपुट पूर्णांकों को देखते हुए, nऔर m, n > 2कितने भेड़ कुल का वर्णन करने के साथ , और m > 0यह कहते हुए कि कितनी भेड़ें पहले ही गिनी जा चुकी हैं, एक ASCII कला का प्रतिनिधित्व करते हैं, जो भेड़ को सोने के लिए गिना जाता है।
अब मोड़ के लिए:
- कलमों के आकार के कारण भेड़ें अंदर होती हैं, शीर्ष पंक्ति केवल अधिकतम
10भेड़ पकड़ सकती है , न कि वर्तमान में कूदने वाली भेड़ की गिनती जो हमेशा शीर्ष पंक्ति में होनी चाहिए। - बाद की पंक्तियों में उनके संबंधित पेन के बाहर भेड़ नहीं हो सकती है (आप दूसरी पंक्ति में बाईं ओर अधिक भेड़ नहीं रख सकते हैं, जबकि आप पहली पंक्ति में करते हैं, और दाएं के लिए भी)।
- यदि
11कुल भेड़ें हैं, तो शीर्ष पंक्ति10में जंपिंग भेड़ होनी चाहिए । - व्हाट्सएप का अग्रणी / अनुगामी होना, और भेड़ों के बीच व्हाट्सएप कोई फर्क नहीं पड़ता, तब तक:
- भेड़ों के बीच न्यूनतम एक व्हाट्सएप चरित्र है
- सभी पात्र उचित रूप से पंक्तिबद्ध हैं।
जब तक ये नियम मिलते हैं, तब तक भेड़ की वास्तविक व्यवस्था आपके क्रियान्वयन तक है।
उदाहरण
उदाहरण के लिए, यहां n=3और m=1सबसे सरल मामला है।
'00^>
'00^> /\ <^00'
|| ++ ||
यहाँ n=11और m=6सबसे अधिक भेड़ें हैं जो एक क्षैतिज रेखा पर फिट हो सकती हैं।
'00^>
'00^> '00^> '00^> '00^> /\ <^00' <^00' <^00' <^00' <^00' <^00'
|| || || || ++ || || || || || ||
यहाँ इसका एक अलग उदाहरण है, साथ n=11औरm=1
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00'
|| || || || || || || || || ++ ||
के साथ एक बड़ा उदाहरण n=30औरm=12
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00' <^00'
|| || || || || || || || ++ || ||
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> <^00' <^00'
|| || || || || || || || || ||
'00^> <^00' <^00'
|| || ||
<^00' <^00'
|| ||
<^00' <^00'
|| ||
<^00' <^00'
|| ||
यहां एक उदाहरण n=17और हैm=2
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00' <^00'
|| || || || || || || || ++ || ||
'00^> '00^> '00^> '00^> '00^> '00^>
|| || || || || ||
यहां एक उदाहरण n=19और हैm=3
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00' <^00' <^00'
|| || || || || || || ++ || || ||
'00^> '00^> '00^> '00^> '00^> '00^> '00^>
|| || || || || || ||
'00^>
||
ध्यान दें कि ये सभी उदाहरण हैं । पिछले एक के लिए, आप दाएं हाथ पर भेड़ की एक ऊर्ध्वाधर सरणी बना सकते हैं, जो बाएं हाथ की जगह को दो पंक्तियों पर फिट करने की अनुमति देगा। या हो सकता है कि दाएं हाथ पर भेड़ का 2x2 वर्ग, जो दो पंक्तियों में बाएं हाथ की भेड़ को भी फिट करेगा। आदि।
I / O और नियम
- इनपुट को किसी भी उचित प्रारूप में और किसी भी सुविधाजनक विधि द्वारा लिया जा सकता है ।
- लीडिंग / ट्रेलिंग न्यूलाइन्स या अन्य व्हाट्सएप वैकल्पिक हैं, बशर्ते कि वर्ण उचित रूप से पंक्तिबद्ध हों।
- या तो एक पूर्ण कार्यक्रम या एक समारोह स्वीकार्य हैं। यदि कोई फ़ंक्शन है, तो आप इसे प्रिंट करने के बजाय आउटपुट वापस कर सकते हैं।
- आउटपुट कंसोल के लिए हो सकता है, स्ट्रिंग्स की सूची के रूप में लौटाया जाता है, एकल स्ट्रिंग के रूप में लौटाया जाता है, आदि।
- मानक खामियों को मना किया जाता है।
- यह कोड-गोल्फ है इसलिए सभी सामान्य गोल्फिंग नियम लागू होते हैं, और सबसे छोटा कोड (बाइट्स में) जीतता है।
n=11औरm=9
n=11तरह के लिए 10 परीक्षण मामले हो सकते हैं 0<m<=10। यह आपको शीर्ष पंक्ति पर सभी भेड़ों को रखने के लिए मजबूर करता है और बाड़ के बाईं ( n-1-m) और दाएं ( m) पर भेड़ की एक गतिशील संख्या निर्धारित पेन आकार का उपयोग नहीं कर सकती है।