इस समस्या में, हमें N*N आकार का एक मैट्रिक्स मैट [] [] दिया जाता है। हमारा काम मैट्रिक्स में अधिकतम योग वाली पंक्ति को खोजना है।
समस्या को समझने के लिए एक उदाहरण लेते हैं,
इनपुट
mat[][] = { 8, 4, 1, 9 3, 5, 7, 9 2, 4, 6, 8 1, 2, 3, 4 }
आउटपुट
Row 2, sum 24
स्पष्टीकरण
Row 1: sum = 8+4+1+9 = 22 Row 2: sum = 3+5+7+9 = 24 Row 3: sum = 2+4+6+8 = 20 Row 4: sum = 1+2+3+4 = 10
समाधान दृष्टिकोण
समस्या का एक सरल समाधान प्रत्येक पंक्ति के तत्वों का योग ज्ञात करना और अधिकतम योग का ट्रैक रखना है। फिर सभी पंक्तियों को पार करने के बाद पंक्ति को अधिकतम योग के साथ लौटाएं।
हमारे समाधान की कार्यप्रणाली को दर्शाने वाला कार्यक्रम,
उदाहरण
#include <iostream> using namespace std; #define R 4 #define C 4 void findMax1Row(int mat[R][C]) { int maxSumRow = 0, maxSum = -1; int i, index; for (i = 0; i < R; i++) { int sum = 0; for(int j = 0; j < C; j++){ sum += mat[i][j]; } if(sum > maxSum){ maxSum = sum; maxSumRow = i; } } cout<<"Row : "<<(maxSumRow+1)<<" has the maximum sum which is "<<maxSum; } int main() { int mat[R][C] = { {8, 4, 1, 9}, {3, 5, 7, 9}, {2, 4, 6, 8}, {1, 2, 3, 4} }; findMax1Row(mat); return 0; }
आउटपुट
Row : 2 has the maximum sum which is 24