खेल प्रतियोगिताओं में, अक्सर ऐसा होता है कि विजेताओं को पोडियम पर प्रस्तुत किया जाता है, जिसमें पहले स्थान पर सबसे ऊंचा व्यक्ति होता है, दूसरे स्थान पर सबसे ऊंचा व्यक्ति बाईं ओर और तीसरे स्थान पर सबसे नीचे वाला व्यक्ति होता है। दांई ओर। हम यहाँ कुछ विशेष ट्वीक्स के साथ फिर से बनाने जा रहे हैं।
पोडियम को नीचे प्रस्तुत किया गया है:
@---@
| @ |
@---@| | |
| @ || | |
| | || | |@---@
| | || | || @ |
यह इस चुनौती का आधार बनेगा। अगला कदम उन लोगों पर फिट करने के लिए पोडियम को व्यापक बनाने के लिए है (उन पर मुद्रण योग्य ASCII तार)। हालांकि, हम सौंदर्य सौंदर्य सुनिश्चित करना चाहते हैं (क्योंकि यह एक शानदार फोटो अवसर है), इसलिए प्रत्येक पोडियम को एक ही चौड़ाई की आवश्यकता है, और चौड़ाई विषम होनी चाहिए। इसके अतिरिक्त, लोग (जाहिर है) पोडियम के केंद्र में खड़े होना चाहते हैं, इसलिए स्ट्रिंग्स को यथासंभव सर्वोत्तम रूप से केंद्रित करना होगा। (आप या तो बाएं या दाएं से संरेखित कर सकते हैं, और इसे लगातार करने की आवश्यकता नहीं है।) उपरोक्त पोडियम न्यूनतम आकार हैं, और 3
व्यापक माने जाते हैं ।
उदाहरण के लिए, ["Tom", "Ann", "Sue"]
क्रमशः पहले-, दूसरे- और तीसरे स्थान का प्रतिनिधित्व करने वाले इनपुट को देखते हुए, निम्न पोडियम का उत्पादन करें:
Tom
@---@
Ann | @ |
@---@| | |
| @ || | | Sue
| | || | |@---@
| | || | || @ |
हालांकि, अगर हमारे पास Anne
इसके बजाय Ann
, हमें अगले आकार तक जाने की आवश्यकता होगी 5
, और जितना संभव हो सके स्ट्रिंग्स को केंद्र में रखना चाहिए । यहाँ, मैं "अतिरिक्त" अक्षर Anne
को केंद्र के बाईं ओर संरेखित कर रहा हूँ , लेकिन आप संरेखित करने के लिए किस पक्ष को चुन सकते हैं।
Tom
@-----@
Anne | @ |
@-----@| | |
| @ || | | Sue
| | || | |@-----@
| | || | || @ |
चलो कुछ लंबे नामों के लिए चलते हैं। कैसे के बारे में ["William", "Brad", "Eugene"]
:
William
@-------@
Brad | @ |
@-------@| | |
| @ || | | Eugene
| | || | |@-------@
| | || | || @ |
यहां हम देख सकते हैं कि Brad
बहुत सारे व्हाट्सएप हैं, Eugene
कम हैं, और William
बस सही है।
लंबे समय तक परीक्षण के मामले में, कैसे ["A", "BC", "DEFGHIJKLMNOPQRSTUVWXYZ"]
:
A
@-----------------------@
BC | @ |
@-----------------------@| | |
| @ || | | DEFGHIJKLMNOPQRSTUVWXYZ
| | || | |@-----------------------@
| | || | || @ |
अंत में, हमारे पास सबसे छोटा संभव इनपुट है, जैसे कुछ ["A", "B", "C"]
:
A
@---@
B | @ |
@---@| | |
| @ || | | C
| | || | |@---@
| | || | || @ |
- इनपुट और आउटपुट किसी भी सुविधाजनक विधि द्वारा दिया जा सकता है ।
- इनपुट गैर-रिक्त की गारंटी है (यानी, आप कभी भी
""
नाम के रूप में प्राप्त नहीं करेंगे)। - आप इसे STDOUT में प्रिंट कर सकते हैं या इसे फ़ंक्शन परिणाम के रूप में वापस कर सकते हैं।
- या तो एक पूर्ण कार्यक्रम या एक समारोह स्वीकार्य हैं।
- विलुप्त हो रही व्हाट्सएप की कोई भी राशि स्वीकार्य है, इसलिए जब तक पात्र उचित रूप से पंक्तिबद्ध न हो जाएं।
- मानक खामियों को मना किया जाता है।
- यह कोड-गोल्फ है इसलिए सभी सामान्य गोल्फिंग नियम लागू होते हैं, और सबसे छोटा कोड (बाइट्स में) जीतता है।