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

मैट्रिक्स के किसी भी कॉलम में अधिकतम अंतर वाली जोड़ी खोजें C++ में

मान लीजिए हमारे पास NxN क्रम का एक मैट्रिक्स है। हमें तत्वों की एक जोड़ी खोजनी है जो मैट्रिक्स के किसी भी कॉलम से अधिकतम अंतर बनाती है। तो यदि मैट्रिक्स इस तरह है -

123
535
967

तो आउटपुट 8 होगा। क्योंकि जोड़ी (1, 9) कॉलम 0 से है।

विचार सरल है, हमें बस प्रत्येक कॉलम के अधिकतम और न्यूनतम तत्वों के बीच का अंतर खोजना है। फिर अधिकतम अंतर वापस करें।

उदाहरण

#include <iostream>
#define N 5
using namespace std;

int maxVal(int x, int y) {
    return (x > y) ? x : y;
}

int minVal(int x, int y) {
    return (x > y) ? y : x;
}

int colMaxDiff(int mat[N][N]) {
    int diff = INT_MIN;
    for (int i = 0; i < N; i++) {
        int max_val = mat[0][i], min_val = mat[0][i];
        for (int j = 1; j < N; j++) {
            max_val = maxVal(max_val, mat[j][i]);
            min_val = minVal(min_val, mat[j][i]);
        }
        diff = maxVal(diff, max_val - min_val);
    }
    return diff;
}

int main() {
    int mat[N][N] = {{ 1, 2, 3, 4, 5 }, { 5, 3, 5, 4, 0 }, { 5, 6, 7, 8, 9 }, { 0, 6, 3, 4, 12 }, { 9, 7, 12, 4, 3 },};
    cout << "Max difference : " << colMaxDiff(mat) << endl;
}

आउटपुट

Max difference : 12

  1. - C++ में मैट्रिक्स में दिए गए गुणनफल वाली जोड़ी जांचें

    समस्या विवरण N×M मैट्रिक्स और गुणनफल K दिया गया है। जांचें कि क्या मैट्रिक्स में कोई जोड़ी है जिसका गुणनफल K है। उदाहरण: 4×4 मैट्रिक्स, K=42 → जोड़ी (6, 7) मौजूद है हल: हैशिंग मैट्रिक्स ट्रैवर्स करते हुए हैश सेट में तत्व डालें प्रत्येक तत्व के लिए: यदि K वर्तमान से विभाज्य है और K/वर्तमान सेट मे

  1. - C++ में सरणी में अधिकतम GCD वाली जोड़ी ढूंढना

    मान लीजिए हमारे पास धनात्मक पूर्णांकों की एक सरणी है। हमारा कार्य सरणी से पूर्णांकों की जोड़ी ढूंढना है, जहां GCD मान अधिकतम है। मान लीजिए A = {1, 2, 3, 4, 5}, तो आउटपुट 2 है। जोड़ी (2, 4) का GCD 2 है, अन्य GCD मान 2 से कम हैं।इस समस्या को हल करने के लिए, हम एक काउंट सरणी बनाए रखेंगे जो प्रत्येक तत्

  1. - C++ में दिए गए GCD और LCM के साथ कोई भी पेयर खोजें

    इस सेक्शन में हम देखेंगे कि दिए गए GCD और LCM मानों का उपयोग करके नंबर पेयर्स की संख्या कैसे प्राप्त करें। मान लीजिए GCD और LCM मान 2 और 12 हैं। अब नंबरों के संभावित पेयर्स हैं (2, 12), (4, 6), (6, 4) और (12, 2)। इसलिए हमारा प्रोग्राम पेयर्स की संख्या ढूंढेगा। वह 4 है।आइए एल्गोरिदम देखें कि इस समस्य