मान लीजिए कि हमारे पास दो स्ट्रिंग्स s और t हैं जिनमें केवल लोअरकेस अक्षर हैं। अब, स्ट्रिंग t यादृच्छिक फेरबदल स्ट्रिंग s द्वारा उत्पन्न होता है और फिर यादृच्छिक अनुक्रमणिका में एक और अक्षर जोड़ें। हमें उस अक्षर को खोजना है जो t में जोड़ा गया था।
इसलिए, यदि इनपुट "mnopq", "pqmnot" जैसा है, तो आउटपुट "t" होगा, यह अतिरिक्त अक्षर है।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
-
एससम:=0, टीएसयूएम:=0
-
प्रारंभ करने के लिए मैं:=0, जब मैं <कॉल की लंबाई () s, अद्यतन (i से 1 बढ़ाएँ), करते हैं -
-
sSum:=sSum + s[i]
-
-
इनिशियलाइज़ j :=0 के लिए, जब j
-
tSum :=tSum + t[j]
-
-
वापसी (tSum - sSum) चरित्र के रूप में
उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
#include <bits/stdc++.h> using namespace std; class Solution { public: char findTheDifference(string s, string t) { int sSum = 0; int tSum = 0; for (int i = 0; i < s.length(); i++) { sSum += s[i]; } for (int j = 0; j < t.length(); j++) { tSum += t[j]; } return char(tSum - sSum); } }; main(){ Solution ob; cout << (ob.findTheDifference("mnopq","pqmnot")); }
इनपुट
"mnopq","pqmnot"
आउटपुट
t