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

C++ में अधिकतम योग वाले युग्मों की संख्या

एक सरणी को देखते हुए, हमें अधिकतम योग के साथ जोड़े की संख्या खोजने की आवश्यकता है। आइए एक उदाहरण देखें।

इनपुट

arr = [3, 6, 5, 2, 1, 2, 3, 4, 1, 5]

आउटपुट

2

अधिकतम जोड़ी योग 10 है। अधिकतम योग के साथ 2 जोड़े हैं। वे (5, 5) और (6, 4) हैं।

एल्गोरिदम

  • यादृच्छिक संख्याओं के साथ सरणी प्रारंभ करें।
  • अधिकतम योग को न्यूनतम से प्रारंभ करें।
  • सरणी पर दो छोरों के साथ पुनरावृति करें।

    • जोड़ों का अधिकतम योग ज्ञात करें।
  • गिनती को 0 से प्रारंभ करें।
  • अब, फिर से सरणी पर पुनरावृति करें।

    • यदि वर्तमान जोड़ी योग अधिकतम जोड़ी योग के बराबर है, तो गिनती बढ़ाएं।
  • जोड़े की संख्या लौटाएं।

कार्यान्वयन

C++ में उपरोक्त एल्गोरिथम का कार्यान्वयन निम्नलिखित है

#include <bits/stdc++.h>
using namespace std;
int getMaxSumPairsCount(int a[], int n) {
   int maxSum = INT_MIN;
   for (int i = 0; i < n; i++) {
      for (int j = i + 1; j < n; j++) {
         maxSum = max(maxSum, a[i] + a[j]);
      }
   }
   int count = 0;
   for (int i = 0; i < n; i++) {
      for (int j = i + 1; j < n; j++) {
         if (a[i] + a[j] == maxSum) {
            count++;
         }  
      }
   }
   return count;
}
int main() {
   int arr[] = { 3, 4, 5, 2, 1, 2, 3, 4, 1, 5 };
   int n = 10;
   cout << getMaxSumPairsCount(arr, n) << endl;
   return 0;
}

आउटपुट

यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।

1

  1. सभी योग जोड़े प्रिंट करें जो सी ++ में अधिकतम संख्या में होते हैं

    इस समस्या में, हमें n अद्वितीय पूर्णांकों की एक सरणी दी गई है। और हमें उस सरणी के दो पूर्णांकों का योग ज्ञात करना है जिनकी आवृत्ति अधिकतम है। समस्या के कई समाधान हैं और आपको उन सभी को खोजने की आवश्यकता है। Input : array = { 1, 12, 5, 7, 9, 11} Output : 16 12 स्पष्टीकरण - योग 16 और 12 दो बार आते हैं

  1. C++ में दिए गए योग के साथ सभी जोड़ियों को प्रिंट करें

    इस समस्या में, हमें पूर्णांकों की एक सरणी और एक पूर्णांक योग दिया जाता है और हमें पूर्णांकों के उन सभी युग्मों को प्रिंट करना होता है जिनका योग योग मान के बराबर होता है। समस्या को समझने के लिए एक उदाहरण लेते हैं: इनपुट − सरणी ={1, 6, -2, 3} योग =4 आउटपुट - (1, 3) , (6, -2) यहां, हमें दिए गए योग म

  1. सी ++ का उपयोग कर मैट्रिक्स में अधिकतम योग के साथ कॉलम खोजें।

    मान लीजिए कि हमारे पास एम एक्स एन आकार का एक मैट्रिक्स है। हमें कॉलम ढूंढना है, जिसमें अधिकतम योग है। इस कार्यक्रम में हम कुछ मुश्किल दृष्टिकोण का पालन नहीं करेंगे, हम सरणी कॉलम-वार को पार करेंगे, फिर प्रत्येक कॉलम का योग प्राप्त करेंगे, यदि योग अधिकतम है, तो योग और कॉलम इंडेक्स प्रिंट करें। उदाहरण