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

C++ में मैट्रिक्स की प्रत्येक पंक्ति से तत्वों का अधिकतम योग

समस्या विवरण

इस समस्या में, हमें एक द्वि-आयामी मैट्रिक्स mat[][] दिया गया है। हमारा कार्य C++ में मैट्रिक्स में प्रत्येक पंक्ति से तत्वों का अधिकतम योग खोजने के लिए एक प्रोग्राम बनाना है।

यहां, हम मैट्रिक्स की प्रत्येक पंक्ति से एक तत्व लेकर अधिकतम योग ढूंढेंगे जैसे कि वर्तमान पंक्ति में तत्व अंतिम पंक्ति के तत्व से बड़ा हो जिसे योग के लिए माना जाता है। हम उन तत्वों का अधिकतम योग ढूंढेंगे जो उपरोक्त शर्त का पालन करते हैं और यदि यह संभव नहीं है तो -1 प्रिंट करेंगे।

उदाहरण

इनपुट

mat[][] = {{4, 6, 1}, {2, 5, 7}, {9, 1, 2}}

आउटपुट

22

व्याख्या

पहली पंक्ति = 6
दूसरी पंक्ति = 7
तीसरी पंक्ति = 9
योग = 6 + 7 + 9 = 22

समाधान दृष्टिकोण

एक सरल समाधान मैट्रिक्स की अंतिम पंक्ति से शुरू करना है। यहां सबसे बड़ी संख्या ढूंढें और MaxSum में जोड़ें और फिर एक पंक्ति ऊपर जाएं, उस सबसे बड़ी संख्या से कम सबसे बड़ी संख्या ढूंढें जो नीचे की पंक्ति के सबसे बड़े तत्व से कम हो। इसे तब तक करें जब तक आप शीर्ष पंक्ति तक न पहुंच जाएं। यदि हमें सबसे बड़ी संख्या से कम कोई संख्या नहीं मिलती है तो हम -1 लौटाएंगे।

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

#include <iostream>
using namespace std;
#define row 3
#define col 3

int RowMaxSum(int a[row][col]){
    int maxValLastRow = 10000;
    int maxSum = 0;
    for (int i = row - 1; i >= 0; i--){
        int maxNo = -1;
        for (int j = 0; j < col; j++)
            if (maxValLastRow > a[i][j] && a[i][j] > maxNo)
                maxNo = a[i][j];
        if (maxNo == -1)
            return -1;
        maxValLastRow = maxNo;
        maxSum += maxValLastRow;
    }
    return maxSum;
}

int main(){
    int a[3][3] = {{4, 6, 1},
                   {2, 5, 7},
                   {9, 1, 2}};
    cout<<"The maximum sum of elements from each row in the matrix is "<<RowMaxSum(a);
    return 0;
}

आउटपुट

The maximum sum of elements from each row in the matrix is 22
  1. - C++ प्रोग्राम मैट्रिक्स की प्रत्येक पंक्ति और प्रत्येक कॉलम का योग ज्ञात करने के लिए

    इस ट्यूटोरियल में, हम दिए गए मैट्रिक्स के लिए प्रत्येक पंक्ति और प्रत्येक कॉलम का योग ज्ञात करने के लिए एक प्रोग्राम पर चर्चा करेंगे। इसके लिए, हमें एक A×B मैट्रिक्स दिया जाएगा। हमारा कार्य मैट्रिक्स के सभी एलिमेंट्स को ट्रैवर्स करके मैट्रिक्स की प्रत्येक पंक्ति और प्रत्येक कॉलम का योग ज्ञात करना है

  1. - C++ प्रोग्राम: मैट्रिक्स की प्रत्येक पंक्ति का अधिकतम तत्व ज्ञात करना

    मान लें हमारे पास एक मैट्रिक्स है, हमारा कार्य उस मैट्रिक्स की प्रत्येक पंक्ति का अधिकतम तत्व ज्ञात करना और उन्हें प्रिंट करना है। यह कार्य सरल है। प्रत्येक पंक्ति के लिए, मैक्स को रीसेट करें, और अधिकतम तत्व ज्ञात करें, और इसे प्रिंट करें। आइए बेहतर समझ के लिए कोड देखते हैं। उदाहरण #include <ios

  1. - पायथन में प्रत्येक पंक्ति के तत्वों को फ्लिप करके अधिकतम योग खोजने का प्रोग्राम

    मान लीजिए हमारे पास एक 2D बाइनरी मैट्रिक्स है। दी गई मैट्रिक्स में किसी भी पंक्ति या स्तंभ के लिए हम सभी बिट्स को फ्लिप कर सकते हैं। यदि हम इन ऑपरेशनों को कितनी भी बार कर सकते हैं, और प्रत्येक पंक्ति को एक बाइनरी संख्या मानते हैं, तो हमें इन संख्याओं से बनने वाले सबसे बड़े योग को ढूंढना है। उदाहरण