इस समस्या में, हमें N*N आकार का एक मैट्रिक्स mat[][] दिया गया है। हमारा कार्य मैट्रिक्स में अधिकतम योग वाली पंक्ति खोजना है।
आइए एक उदाहरण से इस समस्या को समझते हैं,
इनपुट
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