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

C++ में अतिरिक्त कोष्ठक हटाने के बाद एक स्ट्रिंग को संतुलित करें

एक स्ट्रिंग वर्णों की एक सरणी है। इस समस्या में, हमें एक स्ट्रिंग दी जाती है जिसमें खोलने और बंद करने वाले कोष्ठक होते हैं। और हम स्ट्रिंग से अतिरिक्त कोष्ठक हटाकर इस स्ट्रिंग को संतुलित करेंगे।

आइए एक उदाहरण लेते हैं,

Input : “)Tutor)ials(p(oin)t(...)”
Output : “Tutorials(p(oin)t(...))”

इस समस्या को हल करने के लिए, हम स्ट्रिंग के माध्यम से पार करेंगे और मिलान करने वाले ब्रैकेट की जांच करेंगे। बेजोड़ कोष्ठकों के लिए बंद कोष्ठकों को हटा दें।

एल्गोरिदम

Step 1 : Traverse the string from left to right.
Step 2 : For opening bracket ‘(’ , print it and increase the count.
Step 3 : For occurence of closing bracket ‘)’ , print it only if count is greater than 0 and decrease the count.
Step 4 : Print all characters other than brackets are to be printed in the array.
Step 5 : In the last add closing brackets ‘)’ , to make the count 0 by decrementing count with every bracket.

उदाहरण

#include<iostream>
#include<string.h>
using namespace std;
void balancedbrackets(string str){
   int count = 0, i;
   int n = str.length();
   for (i = 0; i < n; i++) {
      if (str[i] == '(') {
         cout << str[i];
         count++;
      }
      else if (str[i] == ')' && count != 0) {
         cout << str[i];
         count--;
      }
      else if (str[i] != ')')
         cout << str[i];
      }
      if (count != 0)
      for (i = 0; i < count; i++)
      cout << ")";
}
int main() {
   string str = ")Tutor)ials(p(oin)t(...)";
   cout<<"Original string : "<<str;
   cout<<"\nBalanced string : ";
   balancedbrackets(str);
   return 0;
}

आउटपुट

Original string : )Tutor)ials(p(oin)t(...)
Balanced string : Tutorials(p(oin)t(...))

  1. C++ में N कटने के बाद वृत्त के टुकड़ों को गिनें

    हमें एक पूर्णांक N दिया गया है जो 2D-वृत्त पर लगाए गए कटों की संख्या को दर्शाता है। प्रत्येक वृत्त वृत्त को दो भागों में विभाजित करता है। लक्ष्य N कट के बाद वृत्त के टुकड़ों को खोजना है। टुकड़ों की संख्या =2 * नहीं। कटौती की आइए उदाहरणों से समझते हैं। इनपुट -एन=1 आउटपुट - सर्कल के टुकड़े:2 स्पष

  1. C++ में किसी संख्या को विभाजित करने पर दशमलव के बाद अंकों की संख्या गिनें

    हमें दो पूर्णांक संख्याएँ दी गई हैं मान लीजिए num1 और num2 और कार्य संख्या 1 को num2 से विभाजित करना और इन दी गई संख्याओं को विभाजित करने पर दशमलव के बाद अंकों की गणना करना है। उदाहरण के लिए Input − num1 = 2, num2 = 5 Output − count is 1 स्पष्टीकरण - जब हम 2 को 5 से भाग देते हैं अर्थात

  1. सी ++ में समान पड़ोसियों के साथ वर्णों की गणना करें

    हमें एक स्ट्रिंग दी गई है, मान लें, str और कार्य समान पड़ोसियों वाले स्ट्रिंग str में वर्णों की गणना करना है और इसमें स्ट्रिंग में वर्ण के बाएँ और दाएँ दोनों पक्ष शामिल होंगे। साथ ही, इस परिदृश्य में एक स्ट्रिंग में पहला और अंतिम वर्ण हमेशा माना जाएगा क्योंकि उनके पास केवल एक आसन्न वर्ण है। उदाहरण क