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

सी++ में एक स्ट्रिंग पैलिंड्रोम बनाने के लिए आवश्यक परिशिष्टों की न्यूनतम संख्या

समस्या कथन

एक स्ट्रिंग को देखते हुए, स्ट्रिंग पैलिंड्रोम बनाने के लिए जोड़े जाने वाले न्यूनतम वर्ण खोजें।

उदाहरण

यदि स्ट्रिंग abcac है तो हम 2 हाइलाइट किए गए वर्णों यानी abcacba को जोड़कर स्ट्रिंग पैलिंड्रोम बना सकते हैं

एल्गोरिदम

  • जांचें कि क्या स्ट्रिंग पहले से ही पैलिंड्रोम है, यदि हाँ तो कोई वर्ण जोड़ने की आवश्यकता नहीं है।
  • एक-एक करके एक वर्ण को स्ट्रिंग से हटा दें और जांचें कि शेष स्ट्रिंग पैलिंड्रोम है या नहीं
  • उपरोक्त प्रक्रिया को तब तक दोहराएं जब तक कि स्ट्रिंग पैलिड्रोम न बन जाए
  • अंतिम उत्तर के रूप में अब तक हटाए गए वर्णों की संख्या लौटाएं

उदाहरण

#include <iostream>
#include <cstring>
using namespace std;
bool isPalindrome(char *str) {
   int n = strlen(str);
   if (n == 1) {
      return true;
   }
   int start = 0, end = n - 1;
   while (start < end) {
      if (str[start] != str[end]) {
         return false;
      }
      ++start;
      --end;
   }
   return true;
}
int requiredAppends(char *str) {
   if (isPalindrome(str)) {
      return 0;
   }
   return 1 + requiredAppends(str + 1);
}
int main() {
   char *str = "abcac";
   cout << "Characters to be appended = " << requiredAppends(str) << endl;
   return 0;
}

आउटपुट

जब आप उपरोक्त प्रोग्राम को संकलित और निष्पादित करते हैं। यह निम्नलिखित आउटपुट उत्पन्न करता है -

Characters to be appended = 2

  1. C++ में एक स्ट्रिंग पैलिंड्रोम बनाने के लिए विलोपन की न्यूनतम संख्या।

    समस्या कथन आकार एन की एक स्ट्रिंग को देखते हुए। कार्य स्ट्रिंग पैलिंड्रोम बनाने के लिए वर्णों की न्यूनतम संख्या को हटाना है। यदि दी गई स्ट्रिंग abcda है तो हम इसे पैलिंड्रोम बनाने के लिए पहले और अंतिम को छोड़कर किन्हीं भी 2 वर्णों को हटा सकते हैं। अगर हम अक्षर b और c को हटाते हैं तो ada स्ट्रिं

  1. जाँच करें कि C++ में कोई संख्या पालिंड्रोम है या नहीं

    यहां हम देखेंगे कि कैसे जांचा जाता है कि कोई संख्या पैलिंड्रोम है या नहीं। दोनों दिशाओं में पैलिंड्रोम नंबर समान हैं। उदाहरण के लिए, संख्या 12321 पैलिंड्रोम है, लेकिन 12345 पैलिंड्रोम नहीं है। तर्क बहुत सीधा है। हमें संख्या को उल्टा करना है, और यदि उलटी संख्या वास्तविक संख्या के समान है, तो वह एक प

  1. पायथन में स्ट्रिंग पैलिंड्रोम बनाने के लिए आवश्यक न्यूनतम वर्णों की जाँच करने का कार्यक्रम

    मान लीजिए कि हमारे पास एक स्ट्रिंग s है, हमें डालने के लिए आवश्यक वर्णों की न्यूनतम संख्या ज्ञात करनी है ताकि स्ट्रिंग एक पैलिंड्रोम बन जाए। इसलिए, यदि इनपुट s =mad जैसा है, तो आउटपुट 2 होगा, क्योंकि हम am को मैडम प्राप्त करने के लिए सम्मिलित कर सकते हैं। इसे हल करने के लिए, हम इन चरणों का पालन कर