समस्या
text में पहले ऐसे अक्षर का इंडेक्स लौटाएँ जो ठीक एक बार आया हो। अक्षर का केस मायने रखता है।
first_unique_index(text) को लागू करें।
इनपुट
text: जांचने के लिए टेक्स्ट।
आउटपुट
इंडेक्स लौटाएँ, या यदि हर अक्षर दोहराया गया है तो -1 लौटाएँ।
सीमाएँ
0 ≤ लंबाई ≤ 100,000
उदाहरण
इनपुट:
text = "swiss"
अपेक्षित आउटपुट:
expected = 1
इनपुट:
std::string text = "swiss";
अपेक्षित आउटपुट:
long long expected = 1;
इनपुट:
string text = "swiss";
अपेक्षित आउटपुट:
long expected = 1;
व्याख्या
s दोहराया गया है, w केवल एक बार इंडेक्स 1 पर आया है।
इनपुट:
text = "aabb"
अपेक्षित आउटपुट:
expected = -1
इनपुट:
std::string text = "aabb";
अपेक्षित आउटपुट:
long long expected = -1;
इनपुट:
string text = "aabb";
अपेक्षित आउटपुट:
long expected = -1;
व्याख्या
हर अक्षर दोहराया गया है: -1।
कैसे हल करें
पहले खुद कोशिश करें, फिर एक-एक करके संकेत खोलें।
संकेत 1
आपको ऐसे characters चाहिए जो exactly once आए हों, सिर्फ पहला different character नहीं.
संकेत 2
पहले सभी character frequencies count करें, फिर frequency one वाली earliest position खोजें.
संकेत 3
ध्यान रखें कि uppercase और lowercase letters अलग characters हैं.
अपेक्षित जटिलता
समय O(n), अतिरिक्त स्थान O(k)
संदर्भ
यह चुनौती CodeUtility के लिए अनुकूलित की गई है। ऊपर दिए गए स्टेटमेंट और सीमाओं का पालन करें।