सेंसर एक आम उपकरण है जिसका उपयोग इंटरवेब पर किया जाता है। लेकिन वे अक्सर शब्द का बहुत अधिक सेंसर करते हैं, और इस तरह से शाप देने वाले को अस्पष्ट बना देते हैं। और कभी-कभी वे पर्याप्त सेंसर नहीं करते हैं, इसलिए शब्द अभी भी अपमानजनक हैं। आपका काम यह तय करना है।
आपका कार्य
एक कार्यक्रम / फ़ंक्शन / जो भी दो सूचियाँ और एक स्ट्रिंग लेता है, उसे लिखें। पहली सूची की तरह अपनी भाषा में सभी शब्दों का शब्दकोश हो जाएगा: ["hello", "goodbye", "belgium", "offensive", "jumping", "hypercool"]
। अगले के सभी युक्त पहली सूची के सबसेट हो जाएगा आक्रामक भाषा में शब्द: ["belgium", "offensive"]
। इन सूचियों के शब्दों में वर्णमाला के केवल निचले अक्षरों को समाहित करने की गारंटी है।
स्ट्रिंग वाक्यांश है जिसे आपको सेंसर करना होगा। यह शब्दकोश से शब्दों से बना होगा, रिक्त स्थान द्वारा अलग किया जाएगा:"Goodbye offensive belgium"
वापसी मान यह होगा कि वाक्यांश सेंसर किया गया है। हालांकि, आपको एक निश्चित तरीके से सेंसर करना होगा। विशेष रूप से, आक्रामक सूची में प्रत्येक शब्द के लिए, आपको मुख्य शब्दकोश में पूरी तरह से अस्पष्ट रहते हुए यथासंभव अधिक से अधिक अक्षरों को सेंसर करना होगा। तो यहाँ यह होगा: Goodbye o******** b******
।
स्पष्टीकरण
- आपके कोड को केस-इनसेंसिटिवली शब्दों की व्याख्या करनी है, लेकिन प्रारंभिक कैपिटलाइज़ेशन के साथ लौटें।
- यदि कई इष्टतम उत्तर हैं, तो उनमें से कोई भी चुनें।
- यदि असंदिग्ध सेंसरिंग असंभव है, तो एक एकल पत्र को सेंसर करें जिसमें कम से कम अन्य संभावित व्याख्याओं की संख्या हो (यदि एकाधिक संभव हो, फिर से, आपकी पसंद)।
परीक्षण के मामलों
["hello", "goodbye", "belgium", "offensive", "jumping", "hypercool"] ["belgium", "offensive"] "Goodbye offensive belgium" -> "Goodbye o******** b******"
["word"] ["word"] "word" -> "****"
["hot", "hat", "bat", "had"] ["hat"] "hat" -> "*at" or "h*t" or "ha*"
https://gist.github.com/deekayen/4148741 ["quart"] "I am a quart" -> "I am a q**r*"
यह कोड-गोल्फ है तो सबसे कम d * mn कोड बाइट्स में जीतता है!
पुनश्च किसी ने बेलगियम के साथ संदर्भ पकड़ा? ; P
["hello", "goodbye", "belgium", "offensive"] ["belgium", "offensive"] "Goodbye offensive belgium" -> "Goodbye o******** b******"
लेकिन परीक्षण के मामले कहते हैं कि["hello", "goodbye", "belgium", "offensive"] ["belgium", "offensive"] "Goodbye offensive belgium" -> "Goodbye offensive b******"
परीक्षण का मामला गलत है, सही है?