इस ट्यूटोरियल में, हम n सरणियों से बढ़ते क्रम के तत्वों का अधिकतम योग खोजने के लिए एक कार्यक्रम पर चर्चा करेंगे।
इसके लिए हमें M आकार के N सरणियाँ प्रदान की जाएंगी। हमारा कार्य प्रत्येक सरणी से एक तत्व का चयन करके अधिकतम योग ज्ञात करना है जैसे कि पिछले सरणी का तत्व अगले एक से छोटा हो।
उदाहरण
#include <bits/stdc++.h>
#define M 4
using namespace std;
//calculating maximum sum by selecting
//one element
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];
int i, j;
for (i = n - 2; i >= 0; i--) {
for (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