समस्या विवरण
मान लीजिए हमारे पास दो स्ट्रिंग्स हैं; हमें इन दो स्ट्रिंग्स का सबसे लंबा असामान्य सबसीक्वेंस ज्ञात करना है। सबसे लंबा असामान्य सबसीक्वेंस वास्तव में एक स्ट्रिंग का सबसे लंबा सबसीक्वेंस है और यह सबसीक्वेंस दूसरी स्ट्रिंग में नहीं आना चाहिए। इसलिए, हमें सबसे लंबे असामान्य सबसीक्वेंस की लंबाई ज्ञात करनी है। यदि सबसे लंबा असामान्य सबसीक्वेंस मौजूद नहीं है, तो -1 लौटाएं।
उदाहरण
यदि इनपुट है: "aabbac", "aabbcc", तो आउटपुट होगा 6।
हल करने का दृष्टिकोण
इस समस्या को हल करने के लिए निम्नलिखित चरणों का पालन करें:
- यदि a, b के समान है, तो -1 लौटाएं
- अन्यथा a और b के आकार का अधिकतम लौटाएं
C++ कार्यान्वयन
#include <bits/stdc++.h>
using namespace std;
class Solution {
public:
int findLUSlength(string a, string b) {
if (a == b)
return -1;
else
return max(a.size(), b.size());
}
};
int main() {
Solution ob;
cout << (ob.findLUSlength("aabbac","aabbcc"));
return 0;
}
इनपुट
"aabbac","aabbcc"
आउटपुट
6