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

C++ में कुछ तत्वों को छोड़कर अधिकतम सबअरे योग

इस ट्यूटोरियल में, हम कुछ तत्वों को छोड़कर अधिकतम सबअरे योग खोजने के लिए एक प्रोग्राम पर चर्चा करेंगे।

इसके लिए हमें M और N आकार के दो सरणियाँ प्रदान की जाएंगी। हमारा कार्य पहली सरणी में एक उप-सरणी को खोजना है, जैसे कि उप-सरणी के अंदर कोई भी तत्व दूसरे सरणी के अंदर मौजूद नहीं है और उप-सरणी के तत्वों का योग है अधिकतम।

उदाहरण

#include <bits/stdc++.h>
using namespace std;
//checking if element is present in second array
bool isPresent(int B[], int m, int x) {
   for (int i = 0; i < m; i++)
   if (B[i] == x)
   return true;
   return false;
}
int findMaxSubarraySumUtil(int A[], int B[], int n, int m) {
   int max_so_far = INT_MIN, curr_max = 0;
   for (int i = 0; i < n; i++) {
      if (isPresent(B, m, A[i])) {
         curr_max = 0;
         continue;
      }
      curr_max = max(A[i], curr_max + A[i]);
      max_so_far = max(max_so_far, curr_max);
   }
   return max_so_far;
}
void findMaxSubarraySum(int A[], int B[], int n, int m) {
   int maxSubarraySum = findMaxSubarraySumUtil(A, B, n, m);
   if (maxSubarraySum == INT_MIN) {
      cout << "Maximum Subarray Sum cant be found" << endl;
   } else {
      cout << "The Maximum Subarray Sum = " << maxSubarraySum << endl;
   }
}
int main() {
   int A[] = { 3, 4, 5, -4, 6 };
   int B[] = { 1, 8, 5 };
   int n = sizeof(A) / sizeof(A[0]);
   int m = sizeof(B) / sizeof(B[0]);
   findMaxSubarraySum(A, B, n, m);
   return 0;
}

आउटपुट

The Maximum Subarray Sum = 7

  1. सी ++ में अधिकतम दो तत्वों को बदलने के बाद अधिकतम सबरे योग

    इस समस्या में, हमें एक सरणी दी जाती है। हमारा काम एक ऐसा प्रोग्राम बनाना है जो C++ में अधिकतम दो तत्वों को उलटने के बाद अधिकतम सबएरे योग प्राप्त करेगा। समस्या का विवरण - यहां, हमें सबएरे को खोजना होगा जो कि एरे के किन्हीं दो नंबरों के चिन्ह को उलटने पर अधिकतम योग उत्पन्न करेगा। समस्या को समझने के

  1. C++ में अधिकतम योग सख्ती से बढ़ते हुए सबरे का पता लगाएं

    मान लीजिए कि हमारे पास n पूर्णांकों की एक सरणी है। सख्ती से बढ़ते उपसरणियों का अधिकतम योग ज्ञात कीजिए। तो अगर सरणी [1, 2, 3, 2, 5, 1, 7] की तरह है, तो योग 8 है। इस सरणी में तीन सख्ती से बढ़ते उप-सरणी हैं ये {1, 2, 3}, {2 , 5} और {1, 7}। अधिकतम योग उप-सरणी {1, 7} है इस समस्या को हल करने के लिए, हमें

  1. C++ में डिवाइड और कॉनकर का उपयोग करते हुए अधिकतम योग सबअरे

    मान लीजिए कि हमारे पास सकारात्मक और नकारात्मक मूल्यों वाले डेटा की एक सूची है। हमें सन्निहित उप-सरणी का योग ज्ञात करना है जिसका योग सबसे बड़ा है। मान लीजिए सूची में {-2, -5, 6, -2, -3, 1, 5, -6} है, तो अधिकतम उप-सरणी का योग 7 है। यह {6, -2, -3 का योग है। , 1, 5} हम इस समस्या का समाधान फूट डालो और ज