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

C प्रोग्राम में बॉम स्वीट अनुक्रम


परिचय

यहां हम बॉम स्वीट अनुक्रम देखेंगे। यह एक बाइनरी अनुक्रम है। यदि किसी संख्या n में विषम संख्या में सन्निहित 0 हैं, तो nth बिट 0 होगी, अन्यथा nth बिट 1 होगी।

एल्गोरिदम

BaumSweetSeqTerm (G, s)
शुरुआत
    आकार n का बिट अनुक्रम seq परिभाषित करें
    baum := 1
    len := n के बाइनरी में बिट्स की संख्या
    i को 0 से len तक लूप
        j := i + 1
        count := 1
        यदि seq[i] = 0, तो
            j को i + 1 से len तक लूप
                यदि seq[j] = 0, तो
                    count बढ़ाएं
                अन्यथा
                    ब्रेक
                अंत यदि
            अंत लूप
            यदि count विषम है, तो
                baum := 0
            अंत यदि
        अंत यदि
    अंत लूप
    baum वापस करें
अंत

C++ प्रोग्राम उदाहरण

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

int BaumSweetSeqTerm(int n) {
    bitset<32> sequence(n);
    int len = 32 - __builtin_clz(n);
    int baum = 1;
    for (int i = 0; i < len;) {
        int j = i + 1;
        if (sequence[i] == 0) {
            int count = 1;
            for (j = i + 1; j < len; j++) {
                if (sequence[j] == 0)
                    count++;
                else
                    break;
            }
            if (count % 2 == 1)
                baum = 0;
        }
        i = j;
    }
    return baum;
}

int main() {
    int n = 4;
    cout << BaumSweetSeqTerm(n);
}

आउटपुट

1
  1. - Python में अनुक्रम से अधिकतम k-दोहराव वाला सबस्ट्रिंग खोजें

    मान लीजिए हमारे पास s नामक कैरेक्टर्स का एक अनुक्रम है, हम कहते हैं कि एक स्ट्रिंग w k-दोहराव वाली स्ट्रिंग है यदि w को k बार जोड़ने पर वह अनुक्रम का सबस्ट्रिंग होता है। w का अधिकतम k-दोहराव मान वह उच्चतम मान k होगा जहां w अनुक्रम में k-दोहराव वाला है। और यदि w दिए गए अनुक्रम का सबस्ट्रिंग नहीं है,

  1. - पायथन में समतुल्य आवृत्तियों वाले अनुक्रम को खोजने का प्रोग्राम

    मान लीजिए हमारे पास संख्याओं की एक सूची है। हमें संख्याओं के सबसे लंबे अनुक्रम की लंबाई ज्ञात करनी है जैसे कि जब हम अनुक्रम से एक संख्या हटाते हैं, तो प्रत्येक संख्या समान संख्या में होती है। इसलिए, यदि इनपुट numbers = [2, 4, 4, 7, 7, 6, 6] है, तो आउटपुट 7 होगा। इसे हल करने के लिए, हम इन चरणों का

  1. - पायथन में सबसे लंबे लगातार अनुक्रम की लंबाई खोजने का प्रोग्राम

    मान लीजिए हमारे पास एक असॉर्टेड सरणी है, हमें लगातार तत्वों के सबसे लंबे अनुक्रम की लंबाई ढूंढनी है। उदाहरण के लिए, यदि इनपुट nums = [70, 7, 50, 4, 6, 5] है, तो आउटपुट 4 होगा, क्योंकि सबसे लंबा लगातार अनुक्रम [4, 5, 6, 7] है, इसलिए हम इसकी लंबाई 4 लौटाते हैं। इसे हल करने के लिए हम निम्न चरणों का पाल