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

दिए गए मान से कम AND, OR, और XOR ऑपरेशन का अधिकतम मान ज्ञात करने के लिए C प्रोग्राम


मान लीजिए हमें दो पूर्णांक k और n दिए गए हैं। हमारा कार्य 1 से n तक की सभी संख्या जोड़ियों के बीच तीन ऑपरेशन करना है: बिटवाइज AND, बिटवाइज OR, और बिटवाइज XOR। हमें उन सभी जोड़ियों के लिए तीनों ऑपरेशन का अधिकतम मान वापस करना है जो दिए गए मान k से कम हो।

उदाहरण के लिए, यदि इनपुट n = 5, k = 5 है, तो आउटपुट 4 3 4 होगा।

5 से कम सभी संख्या जोड़ियों के लिए AND, OR, और XOR ऑपरेशन का अधिकतम मान क्रमशः 4, 3, और 4 है। हम देख सकते हैं कि इन ऑपरेशन के मान दिए गए मान k से कम हैं, जो 5 है।

हल करने के चरण

  • andMax := 0, orMax = 0, xorMax = 0
  • value1 := 0, value2 = 0, value3 = 0
  • i := 1 से शुरू करें, जब i <= n, i को 1 से बढ़ाते हुए करें:
    • j := i+1 से शुरू करें, जब j <= n, j को 1 से बढ़ाते हुए करें:
      • value1 := i AND j
      • value2 := i OR j
      • value3 := i XOR j
      • यदि value1 > andMax और value1 < k, तो andMax := value1
      • यदि value2 > orMax और value2 < k, तो orMax := value2
      • यदि value3 > xorMax और value3 < k, तो xorMax := value3
  • andMax, orMax, xorMax प्रिंट करें

उदाहरण

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

#include <stdio.h> #include <string.h> #include <math.h> #include <stdlib.h> void solve(int n, int k) { int andMax = 0, orMax = 0, xorMax = 0; int value1 = 0, value2 = 0, value3 = 0; for (int i = 1; i <= n; i++) { for (int j = i+1; j <= n; j++) { value1 = i & j; value2 = i | j; value3 = i ^ j; if (value1 > andMax && value1 < k) andMax = value1; if (value2 > orMax && value2 < k) orMax = value2; if (value3 > xorMax && value3 < k) xorMax = value3; } } printf("%d %d %d ", andMax, orMax, xorMax); } int main() { solve(5, 5); return 0; }

इनपुट

5, 5

आउटपुट

4 3 4

  1. पायथन में दिए गए बाइनरी ट्री में BST का सबसे बड़ा योग मान ढूंढने का प्रोग्राम पायथन में दिए गए बाइनरी ट्री में BST का सबसे बड़ा योग मान ढूंढने का प्रोग्राम

    मान लीजिए हमें एक बाइनरी ट्री प्रदान की गई है। हमें यह ढूंढना है कि क्या उसके सबट्रीज में बाइनरी सर्च ट्री (BST) मौजूद हैं और सबसे बड़े BST का योग ढूंढना है। योग ढूंढने के लिए, हम उस BST में प्रत्येक नोड के मान जोड़ते हैं। हम आउटपुट के रूप में योग मान लौटाते हैं। इसलिए, यदि इनपुट है: तो आउटपुट 12

  1. - प्रोग्राम जांचने के लिए कि क्या सूची में सभी मान दिए गए मान से अधिक हैं Python में

    इस ट्यूटोरियल में, हम जांचेंगे कि क्या सूची में सभी तत्व किसी संख्या से अधिक हैं या नहीं। उदाहरण के लिए, हमारे पास एक सूची [1, 2, 3, 4, 5] और एक संख्या 0 है। यदि सूची में हर मान दिए गए मान से अधिक है तो, हम True लौटाते हैं अन्यथा False।यह एक सरल प्रोग्राम है। हम इसे 3 मिनट से कम में लिख सकते हैं। पह

  1. - पायथन प्रोग्राम: चेक करना कि लिस्ट में सभी वैल्यूज़ दिए गए मान से अधिक हैं या नहीं

    लिस्ट दी गई है और चेकिंग वैल्यू दी गई है, लिस्ट में उन सभी वैल्यूज़ को प्रदर्शित करें जो दिए गए मान से अधिक हैं।उदाहरणInput: A=[10, 20, 30, 40, 50] Given value=20 Output: No Input: A=[10, 20, 30, 40, 50] Given value=5 Output: Yesएल्गोरिदमचरण 1: यूजर इनपुट लिस्ट बनाएं। चरण 2: चेकिंग वैल्यू इनपुट करें