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

C++ में जांचें कि स्ट्रिंग anbn पैटर्न का पालन करती है या नहीं


मान लीजिए, हमें एक स्ट्रिंग दी गई है जो केवल दो अक्षरों a और b से बनी है। हमें यह पता लगाना है कि क्या स्ट्रिंग anbn रूप की है, या दूसरे शब्दों में इसमें n संख्या में a के बाद n संख्या में b हैं। यदि सत्य, तो हम 1 वापस करते हैं अन्यथा 0।

इसलिए, यदि इनपुट "aaaaaaaaaaaabbbbbbbbbbbb" जैसा है, तो आउटपुट सत्य होगा।

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

  • length := इनपुट_स्ट्रिंग की लंबाई
  • i := 0 से शुरू करें, जब i < length, i बढ़ाते हुए:
    • यदि input_string[i] 'a' के समान नहीं है, तो: लूप से बाहर आएं
  • यदि i * 2 length के समान नहीं है, तो: असत्य वापस करें
  • j := i से शुरू करें, जब j < length, j बढ़ाते हुए:
    • यदि input_string[j] 'b' के समान नहीं है, तो: असत्य वापस करें
  • सत्य वापस करें

उदाहरण (C++)

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

#include <bits/stdc++.h> 
using namespace std; 

bool solve(string input_string) { 
    int length = input_string.length(); 
    int i; 
    for (i = 0; i < length; i++) 
        if (input_string[i] != 'a') 
            break; 
    if (i * 2 != length) 
        return false; 
    for (int j = i; j < length; j++) 
        if (input_string[j] != 'b') 
            return false; 
    return true; 
} 

int main() { 
    string input_string = "aaaaaaaaaaaabbbbbbbbbbbb"; 
    cout << solve(input_string) << endl; 
    return 0; 
}

इनपुट

"aaaaaaaaaaaabbbbbbbbbbbb"

आउटपुट

1

  1. - C++ कोड: जांचें कि स्ट्रिंग विविध है या नहीं

    मान लीजिए हमारे पास n लोअरकेस अक्षरों का एक स्ट्रिंग S है। एक स्ट्रिंग को विविध कहा जाता है यदि इसमें अंग्रेजी वर्णमाला के लगातार अक्षर हैं और प्रत्येक अक्षर ठीक एक बार आता है। (अक्षर a और z आसन्न नहीं हैं)। हमें जांचना है कि यह विविध है या नहीं।उदाहरण के लिए, यदि इनपुट S = fced है, तो आउटपुट True ह

  1. - C++ प्रोग्राम: जांचें कि दी गई स्ट्रिंग खराब है या नहीं

    मान लीजिए हमारे पास n वर्णों वाली एक स्ट्रिंग S है। S में लोअरकेस अंग्रेजी अक्षर और ) वर्ण हैं। स्ट्रिंग खराब है, यदि अंत में ) वर्णों की संख्या शेष वर्णों की संख्या से सख्ती से अधिक है। हमें जांचना है कि S खराब है या नहीं। उदाहरण के लिए, यदि इनपुट S = fega)))))) है, तो आउटपुट True होगा, क्योंकि यह

  1. C++ में जांचें कि ट्री आइसोमॉर्फिक है या नहीं C++ में जांचें कि ट्री आइसोमॉर्फिक है या नहीं

    बाइनरी ट्री में, प्रत्येक नोड में दो बच्चे होते हैं, यानी बायां बच्चा और दायां बच्चा। मान लीजिए हमारे पास दो बाइनरी ट्री हैं और कार्य यह जांचना है कि क्या एक ट्री को दूसरे ट्री को उसके बाएं तरफ फ्लिप करके प्राप्त किया जा सकता है या नहीं। एक ट्री आइसोमॉर्फिक है यदि इसे दूसरे ट्री को उसकी बाईं तरफ फ्ल