इस समस्या में हमें दो तार str और corStr दिए जाते हैं। हमारा काम यह पता लगाना है कि क्या कोई स्ट्रिंग किसी अन्य दिए गए स्ट्रिंग के साथ शुरू और समाप्त होती है।
समस्या को समझने के लिए एक उदाहरण लेते हैं,
इनपुट: str ="abcprogrammingabc" conStr ="abc"
आउटपुट: सच
समाधान दृष्टिकोण:
समस्या को हल करने के लिए, हमें यह जांचना होगा कि क्या स्ट्रिंग कॉन्स्ट्र के साथ शुरू और समाप्त होती है। इसके लिए हम string और corStr की लंबाई पाएंगे। फिर हम जाँच करेंगे कि क्या लेन (स्ट्रिंग)> लेन (conStr), यदि गलत नहीं है।
जांचें कि क्या corStr आकार के उपसर्ग और प्रत्यय समान हैं और जांचें कि उनमें corStr है या नहीं।
हमारे समाधान की कार्यप्रणाली को दर्शाने वाला कार्यक्रम,
उदाहरण
#include <bits/stdc++.h> using namespace std; bool isPrefSuffPresent(string str, string conStr) { int size = str.length(); int consSize = conStr.length(); if (size < consSize) return false; return (str.substr(0, consSize).compare(conStr) == 0 && str.substr(size-consSize, consSize).compare(conStr) == 0); } int main() { string str = "abcProgrammingabc"; string conStr = "abc"; if (isPrefSuffPresent(str, conStr)) cout<<"The string starts and ends with another string"; else cout<<"The string does not starts and ends with another string"; return 0; }
आउटपुट -
The string starts and ends with another string