जोबिटिशियन भाषा अंग्रेजी का एक नया विकृति है जहां एक शब्द खंडों में टूट जाता है जिसे प्रत्येक को एक अलग अक्षर से शुरू करना चाहिए। फिर हर बार उन शुरुआती पत्रों में से एक दूसरे स्ट्रिंग में दिखाई देता है, इसे इसके पूरे संबंधित खंड के साथ बदल दिया जाता है, पूंजीकरण बनाए रखता है।
इस प्रक्रिया को जियोसाइटिंग कहा जाता है ।
उदाहरण के लिए शब्द " जोबिट्स " को तोड़ दिया जा सकता है geo bits
, और बकवास कविता
Algy met a Bear
A Bear met Algy
The Bear was bulgy
The bulge was Algy
के रूप में इसके साथ Geobitsized होगा
Algeoy met a Bitsear
A Bitsear met Algeoy
The Bitsear was bitsulgeoy
The bitsulgeoe was Algeoy
क्योंकि हर g
बन जाता है geo
, हर G
(हालांकि कोई नहीं होता) बन जाता है Geo
, हर b
बन जाता है bits
और हर B
बन जाता है Bits
।
ध्यान दें कि प्रत्येक प्रतिस्थापन मूल स्ट्रिंग के संबंध में किया जाता है, न कि कोई मध्यवर्ती चरण। जैसे अगर geo
किया गया था gbo
बजाय, b
's बनाया के साथ बदल नहीं होता bits
।
चुनौती
एक प्रोग्राम या फ़ंक्शन लिखें जो जियोबिट्स भाषा उत्पन्न कर सकता है।
लोअरकेस अक्षर (az) और रिक्त स्थान से बने सिंगल-लाइन स्ट्रिंग में लें। यह शब्द जियोबिट्सिंग तर्क के रूप में इस्तेमाल किया जाएगा, जिसमें रिक्त स्थान अलग-अलग होंगे। आप मान सकते हैं:
- खंड खाली नहीं होंगे। तो रिक्त स्थान एक दूसरे के पड़ोसी नहीं होंगे और न ही स्ट्रिंग के प्रारंभ या अंत में होंगे।
- प्रत्येक खंड एक अलग अक्षर से शुरू होता है। इस प्रकार 26 से अधिक नहीं हो सकते।
उदाहरण के लिए, कुछ वैध हिस्सों में बंटा हुआ तार आप का समर्थन करना चाहिए रहे हैं geo bits
, butt ner
, alex
, और do o r k nob
(एकल पत्र खंडों कोई प्रभाव नहीं लेकिन मान्य हैं)। लेकिन geo
, butt ner
, Alex
, और do o r k n ob
अमान्य हैं।
आपके प्रोग्राम या फ़ंक्शन को जियोबिट्सिंग को लागू करने के लिए एक और मनमाना स्ट्रिंग लेने की जरूरत है, और परिणामस्वरूप जियोबिट्स भाषा को प्रिंट या वापस करना होगा।
आप मान सकते हैं कि इस स्ट्रिंग में केवल newlines और मुद्रण योग्य ASCII शामिल हैं।
याद रखें कि पत्र मामलों को इनपुट से आउटपुट तक संरक्षित किया जाना चाहिए।
यहाँ no pro gr am m ing
जियोबिट्सिंग तर्क के रूप में कुछ और उदाहरण दिए गए हैं :
[empty string]
→ [empty string]
i
→ ing
I
→ Ing
Mmmm, mmm... MmmmMMM: m&m!
→ Mmmm, mmm... MmmmMMM: m&m!
(कोई परिवर्तन नहीं)
People think bananas are great, don't you?
→ Proeoprole thingnok bamnoamnoams amre grreamt, dono't you?
Pet a Puppy
Google Wikipedia
↓
Proet am Prouproproy
Groogrle Wingkingproedingam
ध्यान दें कि परिणाम समान होना चाहिए कोई बात नहीं कि तर्क कैसे व्यवस्थित किया जाता है, उदाहरण के लिए ing pro m no am gr
ऊपर के समान परिणाम प्राप्त करना चाहिए।
बाइट्स में सबसे छोटा कोड जीतता है।
\\b${l}(\\S+)
कि आप 5 बाइट खर्च करता है।
abra cadabra
, !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
बस इतना ही बढ़त मामलों को शामिल करना चाहिए, और अगर एक कोशिश करता regexes उपयोग करने के लिए उनमें से एक बहुत देखते हैं ...
["no", "pro", "gr", "am", "m", "ing"]