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

C++ में दी गई रेंज से अधिकतम बिटवाइज AND पेयर


समस्या कथन

एक रेंज [L, R] दी गई है, कार्य एक पेयर (X, Y) ढूंढना है जैसे कि L ≤ X < Y ≤ R और X & Y सभी संभावित पेयर्स में अधिकतम हो, फिर मिले पेयर का बिटवाइज AND प्रिंट करें।

उदाहरण

यदि L = 1 और R = 10 तो अधिकतम बिटवाइज AND मान 8 है जिसे निम्नानुसार बनाया जा सकता है:

1000 # 8 का बाइनरी प्रतिनिधित्व
Bitwise AND
1001 # 9 का बाइनरी प्रतिनिधित्व
----
1000 # अंतिम परिणाम

एल्गोरिदम

L से R तक पुनरावृति करें और हर संभावित पेयर के लिए बिटवाइज AND जांचें और अंत में अधिकतम मान प्रिंट करें।

उदाहरण

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

int getMaxBitwiseAndValue(int L, int R) {
    int maxValue = L & R;
    for (int i = L; i < R; ++i) {
        for (int j = i + 1; j <= R; ++j) {
            maxValue = max(maxValue, (i & j));
        }
    }
    return maxValue;
}

int main() {
    int L = 1, R = 10;
    cout << "Maximum value = " << getMaxBitwiseAndValue(L, R) << endl;
    return 0;
}

आउटपुट

Maximum value = 8
  1. - C++ में रेंज [A, B] में C से विभाज्य अधिकतम धनात्मक पूर्णांक

    यहां हम एक दिलचस्प समस्या देखेंगे। मान लीजिए हमारे पास तीन पूर्णांक A, B, और C हैं। हमें एक न्यूनतम पूर्णांक X ढूंढना है, जैसे कि X mod C = 0, और X रेंज [A, B] में नहीं है। यदि A, B और C के मान 5, 10 और 4 हैं, तो X का मान 4 होगा। समाधान प्राप्त करने के चरण: चरण − यदि C रेंज [A, B] में नहीं है

  1. - C++ में अज्ञात संख्याओं के दिए गए उत्पाद से अधिकतम GCD

    मान लीजिए हमारे पास दो पूर्णांक N और P हैं। P, N अज्ञात पूर्णांकों का उत्पाद है। हमें उन पूर्णांकों का GCD ढूंढना है। ऐसे पूर्णांकों के अलग-अलग समूह संभव हैं जो समान परिणाम देंगे। यहां हम सभी संभावित समूहों में से अधिकतम GCD उत्पन्न करेंगे। मान लीजिए N = 3, और P = 24, तो अलग-अलग समूह होंगे जैसे {1,

  1. - C++ में दिए गए GCD और LCM के साथ कोई भी पेयर खोजें

    इस सेक्शन में हम देखेंगे कि दिए गए GCD और LCM मानों का उपयोग करके नंबर पेयर्स की संख्या कैसे प्राप्त करें। मान लीजिए GCD और LCM मान 2 और 12 हैं। अब नंबरों के संभावित पेयर्स हैं (2, 12), (4, 6), (6, 4) और (12, 2)। इसलिए हमारा प्रोग्राम पेयर्स की संख्या ढूंढेगा। वह 4 है।आइए एल्गोरिदम देखें कि इस समस्य