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

C++ में n सरणियों से बढ़ते क्रम के तत्वों का अधिकतम योग


N सरणियाँ (प्रत्येक आकार M) दी गई हैं। प्रत्येक सरणी से एक तत्व चुनें ताकि चुने गए तत्व सख्ती से बढ़ते क्रम में हों और उनका योग अधिकतम हो।

रणनीति: प्रत्येक सरणी को सॉर्ट करें। अंतिम सरणी से सबसे बड़ा तत्व लें, फिर उससे छोटा तत्व पिछली सरणी से लें, आदि।

उदाहरण: 3 सरणियों के लिए अधिकतम योग 18।

C++ कार्यान्वयन

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

int maximumSum(int a[][M], int n) {
    for (int i = 0; i < n; i++) sort(a[i], a[i] + M);
    int sum = a[n - 1][M - 1];
    int prev = a[n - 1][M - 1];
    for (int i = n - 2; i >= 0; i--) {
        for (int j = M - 1; j >= 0; j--) {
            if (a[i][j] < prev) {
                prev = a[i][j];
                sum += prev;
                break;
            }
        }
        if (j == -1) return 0;
    }
    return sum;
}

int main() {
    int arr[][M] = {{1, 7, 3, 4}, {4, 2, 5, 1}, {9, 5, 1, 8}};
    int n = sizeof(arr) / sizeof(arr[0]);
    cout << maximumSum(arr, n);
    return 0;
}

आउटपुट

18
  1. - C++ में दो दिए गए ऐरे से क्रम बनाए रखते हुए अधिकतम ऐरे बनाना

    समस्या कथन दो समान आकार के ऐरे A[] और B[] दिए गए हैं। कार्य समान आकार का तीसरा ऐरे बनाना है। परिणाम ऐरे में दोनों ऐरे से अधिकतम n तत्व होने चाहिए। इसमें A[] के चुने हुए तत्व पहले होने चाहिए, फिर B[] के चुने हुए तत्व उसी क्रम में जैसे वे मूल ऐरे में दिखाई देते हैं। यदि सामान्य तत्व हैं, तो res[] में

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

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

  1. - ऐरे में गैर-दोहराए गए (अलग) तत्वों का योग खोजें C++ में

    मान लीजिए हमारे पास कुछ तत्वों के साथ एक ऐरे A है। हमें ऐरे में सभी अलग-अलग तत्वों का योग खोजना है। तो यदि A = [5, 12, 63, 5, 33, 47, 12, 63], तो अलग-अलग तत्वों का योग 160 है। डुप्लीकेट तत्वों को एक बार मानने के बाद बस अनदेखा कर दिया जाता है। हम इस समस्या को कुशलता से हल करने के लिए अनऑर्डर्ड सेट का