चुनौती
एक गैर-खाली प्रोग्राम / फ़ंक्शन लिखें p
, जो एक गैर-खाली इनपुट स्ट्रिंग दिया गया है s
, के स्रोत कोड में प्रत्येक वर्ण की पहली घटना की स्थिति को आउटपुट करता s
है p
।
उदाहरण के लिए, यदि आपका प्रोग्राम है
main() { cout << magic << cin }
^0 ^5 ^10 ^15 ^20 ^25
और यह एक इनपुट प्राप्त करता है abcd{
, आउटपुट होना चाहिए
[1, x, 9, x, 7] (0-based) [2, x, 10, x, 8] (1-based)
यहाँ, x
किसी भी उत्पादन है कि एक चरित्र की स्थिति के लिए एक वैध उत्पादन नहीं है का प्रतिनिधित्व करता है (उदाहरण के लिए, एक नकारात्मक संख्या, 0
आप 1 आधारित अनुक्रमण उपयोग करते हैं, NaN
, Inf
, स्ट्रिंग potato
, अपने कार्यक्रम की दूरी से बड़ी संख्या, आदि)।
प्रतिबंध
स्रोत कोड को पढ़ने की अनुमति नहीं है (जैसे एक उचित क्वीन में)। टिप्पणियों के उपयोग की अनुमति है, लेकिन आपके स्कोर की ओर गिनती है।
इनपुट और आउटपुट एक उचित प्रारूप में किया जा सकता है, लेकिन असंदिग्ध होना चाहिए (केवल अतिरिक्त सीमांकक, कोई rand
धारा और यह दावा करते हुए कि उत्तर कहीं है), सुसंगत (जैसे, x
ऊपर से हमेशा समान मूल्य होना चाहिए) और मानव- पठनीय ; उदाहरण के लिए, एक स्ट्रिंग या एक चरित्र सरणी। आप मान सकते हैं कि इनपुट मुद्रण योग्य ASCII वर्णों की एक स्ट्रिंग (या सरणी) है; पूरे यूनिकोड सेट को संभालने की कोई आवश्यकता नहीं है।
अपने कोड में कस्टम कोड-पेज या गैर-प्रिंट करने योग्य अस्की?
यदि आपकी भाषा एक कस्टम कोड-पेज (जेली, एपीएल, आदि) का उपयोग करती है, तो आपको इसे ध्यान में रखना चाहिए (इसलिए किसी प्रोग्राम €æÆ
को [1, x, 2]
इनपुट के लिए आउटपुट करना होगा €%æ
)। केवल आउटपुट के लिए केवल गैर- ASCII वर्णों का उपयोग करना -1
(चूंकि इनपुट ASCII- केवल है) एक वैध समाधान नहीं है। आप मान सकते हैं कि आपका कार्यक्रम मूल रूप से आपके कस्टम कोडपेज को स्वीकार करता है, अर्थात, यदि आपके प्रोग्राम में किसी कैरेक्टर A
को पूर्णांक 65
(ASCII एन्कोडिंग) में बदलने की विधि है , तो आप मान सकते हैं कि यह अब आपके कोडपेज में 65 वें वर्ण को रूपांतरित करता है 65
।
निम्नलिखित चुनौती पर प्रेरित: स्थिति जागरूकता
01030708070
?