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

C++ में अतिरिक्त ब्रैकेट हटाकर स्ट्रिंग संतुलित करें


समस्या विवरण

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

उदाहरण: इनपुट: ")Tutor)ials(p(oin)t(...)" → आउटपुट: "Tutorials(p(oin)t(...))"

एल्गोरिदम

  1. बाएं से दाएं ट्रैवर्स करें
  2. '(' मिले तो प्रिंट करें और काउंट बढ़ाएं
  3. ')' मिले और काउंट > 0 हो तो प्रिंट करें और काउंट घटाएं
  4. अन्य वर्ण सीधे प्रिंट करें
  5. अंत में शेष काउंट के बराबर ')' जोड़ें

उदाहरण कोड

#include <iostream>
#include <string>
using namespace std;

void balancedBrackets(string str) {
    int count = 0;
    int n = str.length();
    
    for (int 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 (int 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. N कट के बाद वृत्त के टुकड़ों की संख्या गिनें C++ में N कट के बाद वृत्त के टुकड़ों की संख्या गिनें C++ में

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

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

    हमें दो पूर्णांक संख्याएं दी गई हैं मान लीजिए num1 और num2 और कार्य num1 को num2 से विभाजित करना है और इन दी गई संख्याओं को विभाजित करने पर दशमलव के बाद अंकों की संख्या की गणना करना है। उदाहरण इनपुट: num1 = 2, num2 = 5 आउटपुट: count is 1 व्याख्या: जब हम 2 को 5 से विभाजित करते हैं यानी 2/5 = 0.4, तो

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

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