चुनौती
पिछले एक को छोड़कर स्ट्रिंग के प्रत्येक चरित्र के लिए, निम्नलिखित करें:
वर्तमान चरित्र आउटपुट।
निम्न सूची से यादृच्छिक रूप से आउटपुट द्वारा अनुसरण किया गया है जो 1 - 5 (समावेशी) के बीच यादृच्छिक संख्या है:
- वर्तमान चरित्र
- स्ट्रिंग का अगला चरित्र
- उस वर्ण का स्विचकेस संस्करण जो आप वर्तमान में हैं
- स्ट्रिंग के अगले वर्ण का स्विचकेस संस्करण।
परीक्षण के मामलों
String
-> SSSTSStrTrIiinIIngn
, . , . , . Hello world!
-> ,,, .. , ,, .... , , .. .. . HHH HHEeelLlLllooO wwOworOOrrrRllDd!!D
Programming Puzzles and Code Golf
-> PrPPrRrOooooogggRgGraAraaaMMMmmmimMIiininGGgG PPPPuZzZZzZzzZzllLLEEeEsEsssS a aANnNddD C COCoooOOdeDe E GGGoOllFFf
टिप्पणियाँ
- आपको केवल वर्ण के स्विचकेस संस्करण को लागू करने की आवश्यकता है यदि चरित्र वर्णमाला (AZ और az) का हिस्सा है।
- आपके यादृच्छिक फ़ंक्शन को एकरूप होने की आवश्यकता नहीं है लेकिन फिर भी दी गई सूची में किसी भी तत्व को वापस करने का मौका होना चाहिए।
- आपको किसी भी मानक I / O प्रारूप का उपयोग करने की अनुमति है।
- आप मान सकते हैं कि इनपुट की लंबाई दो से अधिक या उसके बराबर है।
- आप मान सकते हैं कि इनपुट में केवल ASCII वर्ण हैं।
- शीर्षक एक परीक्षण मामला नहीं है (यदि यह वैध परीक्षण मामला है तो यह अनजाने में है)।
- स्विचकेस का मतलब है कि अगर यह अपरकेस है तो लोअरकेस को मोड़ें और अगर यह लोअरकेस है तो इसे अपरकेस में बदल दें।
String
पैदा करता हैSSSTSStrTrIiinIIngn
[S]SSTSS [t]rT, [r]I, [i]inII, [n]gn
जहाँ ब्लॉक के बीच के अक्षर पहले बुलेट पॉइंट (" वर्तमान वर्ण आउटपुट ") हैं, और अन्य वर्ण 1-5 बार बेतरतीब ढंग से उसके लिए चार विकल्पों में से एक हैं चरित्र। लेकिन मैं मानता हूं, कुछ और स्पष्ट स्पष्टीकरण उचित होंगे। परीक्षण के मामले के अलावा यह विशेष रूप से स्पष्ट नहीं था कि हमें 1-5 बार एक यादृच्छिक विकल्प चुनना होगा। रैंडम पसंद चुनने के बजाय 1-5 बार दोहराया गया (जैसा कि गिया जवाब वर्तमान में करता है)।