एक प्रोग्राम लिखें जो गैर-व्हाट्सएप वर्णों की एक स्ट्रिंग से गुजरता है (आप मान सकते हैं कि वे अंक 0
हैं 9
, लेकिन जिस तरह से उन्हें संसाधित किया जाना है उस पर कुछ भी निर्भर नहीं करता है) और निम्नलिखित नियमों के अनुसार रिक्त स्थान जोड़ता है।
- बता दें कि वर्तमान टोकन खाली स्ट्रिंग है, और पहले से उत्सर्जित टोकन एक खाली सेट है।
- स्ट्रिंग के पात्रों के माध्यम से Iterate। प्रत्येक चरित्र के लिए, पहले चरित्र को वर्तमान टोकन में जोड़ें। फिर यदि वर्तमान टोकन पहले से उत्सर्जित टोकन के सेट में नहीं है, तो उस सेट में वर्तमान टोकन जोड़ें और नए वर्तमान टोकन को खाली स्ट्रिंग होने दें।
- यदि आप स्ट्रिंग के अंत तक पहुंचते हैं तो वर्तमान टोकन खाली है, उत्सर्जन के क्रम में पहले से उत्सर्जित टोकन का उत्पादन करता है, एक अंतरिक्ष वर्ण द्वारा अलग किया जाता है। अन्यथा मूल स्ट्रिंग शब्दशः उत्पादन।
इनपुट
एसटीडीआईएन में इनपुट अंकों का एक क्रम होना चाहिए।
उत्पादन
कार्यक्रम को चरण 3 में निर्दिष्ट परिणाम को प्रिंट करना चाहिए।
नमूने
नमूना इनपुट
2015
10101010
4815162342
101010101010
3455121372425
123456789101112131415
314159265358979323846264338327950288419716939937
नमूना आउटपुट
2 0 1 5
10101010
4 8 1 5 16 2 3 42
1 0 10 101 01 010
3 4 5 51 2 1 37 24 25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
3 1 4 15 9 2 6 5 35 8 97 93 23 84 62 64 33 83 27 95 0 28 841 971 69 39 937
यह कोड गोल्फ है, इसलिए मानक सीजी नियम लागू होते हैं। बाइट्स जीत में सबसे छोटा कार्यक्रम।
(कृपया टिप्पणियों में किसी भी स्पष्टीकरण का अनुरोध करें। मैं अभी भी इसके लिए नया हूं। धन्यवाद!)
1 0 10
, तो अगला पुनरावृत्ति मिलेगा 1
(पहले से उपयोग किया गया), फिर एक को खोजने के लिए अग्रिम 10
(पहले से उपयोग किया गया), फिर एक को खोजने के लिए अग्रिम करें 101
, जो नया है और 'जोड़ा' जाएगा। यह तब एक स्थान जोड़ देगा और आपको एक नया मिलेगा 0
, जिसका उपयोग पहले ही किया जा चुका है, लेकिन यहां स्ट्रिंग के अंत में है। इसलिए, आउटपुट होगा 1 0 10 101 0
, जो अमान्य है ( 0
दोहराया जाता है), और स्क्रिप्ट को फिर इनपुट स्ट्रिंग को आउटपुट करना होगा। यह केवल तभी बना सकता है 1010
जब 101
पहले से ही इस्तेमाल किया गया हो।
If a unique number cannot be formed at the end of the string, then the input should be printed verbatim
10101010 को विभाजित नहीं किया जा सकता है, इसलिए यह इस प्रकार मुद्रित होता है।
1
, जो एक दोहराव होगा। इसलिए इसके बजाय आप अंतरिक्ष 5 में सही एक को स्थानांतरित करते हैं, और फिर आप चरण 4 में फिर से एक को स्थानांतरित करते हैं, और आप फिर से चरण 5 में प्रवेश करते हैं और बनाते हैं 101
।
4815162342
मैं देखता हूं कि आपने वहां क्या किया था, ब्रोथा ।