Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

जाँच करें कि C++ में दिए गए उप-स्ट्रिंग को पुनरावर्ती रूप से हटाकर कोई स्ट्रिंग खाली हो सकती है या नहीं

मान लीजिए, हमें दो तार दिए गए हैं, str1 और str2। str2 str1 का एक विकल्प है, और हम str2 को str1 से हटा सकते हैं। यह संभव है कि स्ट्रिंग str2 str1 में कई बार प्रकट हो। यहां हमारा लक्ष्य यह पता लगाना है कि क्या str1 एक अशक्त स्ट्रिंग बन जाता है यदि हम str2 को str1 से कई बार हटाते रहते हैं। यदि संभव हो तो हम 1 लौटाते हैं, अन्यथा 0.

इसलिए, यदि इनपुट str1 ="CCCPPPPPP", str2 ="CPP" जैसा है; तब आउटपुट सही होगा।

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • str1> 0 के आकार के दौरान, −
      . करें
    • अनुक्रमणिका:=str1 में str2 की स्ट्रिंग प्रारंभ स्थिति लौटाएं
    • यदि सूचकांक -1 के समान है, तो −
      • लूप से बाहर आएं
    • str1 से str2 हटाएं
  • वापसी 1 अगर str1 का आकार 0 के समान है, अन्यथा 0.

उदाहरण (C++)

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

#include<bits/stdc++.h>
using namespace std;
bool solve(string str1, string str2) {
   while (str1.size() > 0) {
      int index = str1.find(str2);
      if (index == -1)
      break;
      str1.erase(index, str2.size());
   }
   return (str1.size() == 0);
}
int main() {
   string str1 = "CCCPPPPPP", str2 = "CPP";
   cout<<solve(str1, str2)<<endl;
   return 0;
}

इनपुट

"CCCPPPPPP", "CPP"

आउटपुट

1

  1. जांचें कि स्ट्रिंग में सी ++ में उप-स्ट्रिंग है या नहीं

    यहां हम देखेंगे कि कैसे स्ट्रिंग लाइब्रेरी फ़ंक्शंस का उपयोग C++ में स्ट्रिंग्स से मिलान करने के लिए किया जा सकता है। यहां हम मुख्य स्ट्रिंग में सबस्ट्रिंग की घटनाओं को प्राप्त करने के लिए खोज () ऑपरेशन का उपयोग कर रहे हैं। यह खोज () विधि पहला स्थान लौटाती है जहाँ स्ट्रिंग पाई जाती है। यहां हम सभी म

  1. जांचें कि क्या पायथन में दिए गए उप-स्ट्रिंग को पुनरावर्ती रूप से हटाकर एक स्ट्रिंग खाली हो सकती है

    मान लीजिए कि हमारे पास दो तार s और t हैं। हम s से t को कितनी भी बार हटा सकते हैं। और t एक बार में केवल एक बार प्रकट होता है। हमें यह जांचना होगा कि t को जितनी बार आवश्यकता हो उतनी बार हटाकर s खाली हो सकता है या नहीं। इसलिए, यदि इनपुट s =pipipinnn t =pin जैसा है, तो आउटपुट सही होगा क्योंकि हम pipipi

  1. पायथन में स्ट्रिंग स्लाइसिंग यह जांचने के लिए कि क्या पुनरावर्ती विलोपन द्वारा खाली हो सकता है

    इस ट्यूटोरियल में, हम एक प्रोग्राम लिखने जा रहे हैं जो यह जाँच करेगा कि दी गई स्ट्रिंग स्लाइस का उपयोग करके वर्णों के पुनरावर्ती विलोपन से खाली हो सकती है या नहीं। आइए इसे और स्पष्ट रूप से समझने के लिए एक उदाहरण देखें। इनपुट string = "tutorialstutorialspointpoint" sub_string = "tutori