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

C++ में दोहराए गए कॉनकैटिनेशन के बाद बने सरणी में अधिकतम सबअरे योग


इस ट्यूटोरियल में, हम दोहराए गए कॉनकैटिनेशन के बाद बने सरणी में अधिकतम सबअरे योग खोजने के लिए एक प्रोग्राम पर चर्चा करेंगे।

इसके लिए हमें एक सरणी और एक पूर्णांक K प्रदान किया जाएगा। हमारा कार्य उस सबअरे को ढूंढना है जिसमें अधिकतम तत्व हों जब दी गई सरणी को K बार दोहराया जाए।

उदाहरण

#include<bits/stdc++.h> 
using namespace std; 
// अधिकतम सबअरे का योग वापस करना 
int maxSubArraySumRepeated(int a[], int n, int k) { 
    int max_so_far = INT_MIN, max_ending_here = 0; 
    for (int i = 0; i < n*k; i++) { 
        max_ending_here = max_ending_here + a[i%n]; 
        if (max_so_far < max_ending_here) 
            max_so_far = max_ending_here; 
        if (max_ending_here < 0) max_ending_here = 0; 
    } 
    return max_so_far; 
} 
int main() { 
    int a[] = {10, 20, -30, -1}; 
    int n = sizeof(a)/sizeof(a[0]); 
    int k = 3; 
    cout << "Maximum contiguous sum is " 
        << maxSubArraySumRepeated(a, n, k); 
    return 0; 
}

आउटपुट

Maximum contiguous sum is 30
  1. - C++ में K नेगेशन के बाद ऐरे योग को अधिकतम करना

    समस्या कथन आकार n का एक ऐरे और एक संख्या k दी गई है। हमें ऐरे को k बार संशोधित करना है। ऐरे संशोधित करने का मतलब है प्रत्येक ऑपरेशन में हम किसी भी ऐरे तत्व arr[i] को उसके नकारात्मक से बदल सकते हैं यानी arr[i] = -arr[i]। कार्य इस ऑपरेशन को इस तरह करना है कि k ऑपरेशन के बाद ऐरे का योग अधिकतम हो। यद

  1. - सख्ती से बढ़ते सब-अर्रे का अधिकतम योग खोजें C++ में

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

  1. - दोहराए गए घटाव से सभी तत्वों को समान बनाकर अधिकतम ऐरे योग खोजें C++ में

    मान लीजिए हमारे पास n तत्वों का एक ऐरे है। सभी तत्वों के अधिकतम संभव योग को खोजें जैसे कि सभी तत्व समान हों। केवल अनुमत ऑपरेशन किन्हीं दो तत्वों को चुनना और बड़े को उन दोनों के निरपेक्ष अंतर से बदलना है। मान लीजिए तत्व [9, 12, 3, 6] जैसे हैं। तो आउटपुट 12 होगा। तो पहले A[1] को A[1] - A[3] = 12 - 6 =