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

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


इस समस्या में, हमें n अद्वितीय पूर्णांकों की एक सरणी दी गई है। और हमें उस सरणी के दो पूर्णांकों का योग ज्ञात करना है जिनकी आवृत्ति अधिकतम है। समस्या के कई समाधान हैं और आपको उन सभी को खोजने की आवश्यकता है।

Input : array = { 1, 12, 5, 7, 9, 11}
Output : 16 12

स्पष्टीकरण - योग 16 और 12 दो बार आते हैं।

5 + 11 = 16 & 7 + 9 = 16
1 + 11 = 12 & 5 + 7 = 12

अब इस समस्या को हल करने के लिए, समस्या के प्रति हमारा दृष्टिकोण प्रत्येक योग जोड़ी की घटना की जाँच करना और फिर जोड़ी को अधिकतम बार प्रिंट करना है।

समस्या को हल करने के लिए कदम -

Step 1: Iterate over all pairs.
Step 2: The occurrence of sum pairs is counted using hash-table.
Step 3: After the interation process is done, the sum pair with maximum occurrence is printed.

उदाहरण

#include <bits/stdc++.h>
using namespace std;
void sumPairs(int a[], int n){
   unordered_map<int, int> pairSum;
   for (int i = 0; i < n - 1; i++) {
      for (int j = i + 1; j < n; j++) {
         pairSum[a[i] + a[j]]++;
      }
   }
   int occur = 0;
   for (auto it : pairSum) {
      if (it.second > occur) {
         occur = it.second;
      }
   }
   for (auto it : pairSum) {
      if (it.second == occur)
         cout << it.first <<"\t";
   }
}
int main(){
   int a[] = { 1, 12, 5, 7, 9, 11 };
   int n = sizeof(a) / sizeof(a[0]);
   cout<<"The sum pairs with max ccurence are : "<<endl;
   sumPairs(a, n);
   return 0;
}

आउटपुट

अधिकतम आवृत्ति वाले योग जोड़े हैं -

16 12

  1. सभी चक्रों को C++ में एक अप्रत्यक्ष ग्राफ में प्रिंट करें

    इस समस्या में, हमें एक अप्रत्यक्ष ग्राफ दिया जाता है और हमें ग्राफ में बनने वाले सभी चक्रों को प्रिंट करना होता है। अप्रत्यक्ष ग्राफ़ एक ग्राफ है जो एक साथ जुड़ा हुआ है। यूनिडायरेक्शनल ग्राफ के सभी किनारे द्विदिश हैं। इसे एक अप्रत्यक्ष नेटवर्क के रूप में भी जाना जाता है। साइकिल ग्राफ़ में डेटा संर

  1. C++ में इनपुट स्ट्रिंग में सभी डुप्लीकेट प्रिंट करें

    इस समस्या में, हमें एक स्ट्रिंग दी जाती है और हमें उन सभी वर्णों को खोजना होता है जो स्ट्रिंग में उनकी संख्या के साथ-साथ दोहराए गए हैं। आइए समस्या को समझने के लिए एक उदाहरण लेते हैं - Input: TutorialsPoint Output: t (3) o (2) i (2) स्पष्टीकरण - प्रत्येक वर्ण के घटित होने की आवृत्तियाँ t → 3 हैं; य

  1. C++ में विषम और सम संख्या वाले सभी स्तरों को प्रिंट करें

    इस समस्या में हमें एक पेड़ दिया जाता है। और हमें सभी स्तरों को सम संख्या में नोड्स और विषम संख्या में नोड्स के साथ प्रिंट करना होगा। आइए अवधारणा को बेहतर ढंग से समझने के लिए एक उदाहरण लेते हैं आउटपुट - Levels with odd number of nodes: 1, 3, 4 Levels with even number of nodes: 2 स्पष्टीकरण - पह