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

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

हमें पूर्णांकों की एक सरणी दी गई है। लक्ष्य सरणी में युग्मों की अधिकतम संख्या ज्ञात करना है जो जोड़े जाने पर समान योग उत्पन्न करते हैं। हमें ऐसे युग्मों की अधिकतम संख्या ज्ञात करनी है।

इनपुट

Arr[]= { 1,2,3,4,2 }

आउटपुट

Maximum count of pairs with same sum : 3

स्पष्टीकरण − संख्याओं के युग्मों का योग −

{1,2}, {1,2} Sum:3
{1,3},{2,2} Sum:4
{1,4},{2,3},{3,2} Sum:5
{2,4} Sum:6
{3,4} Sum:7
Maximum count of pairs with same sum is 3 ( for sum = 5 )

इनपुट

Arr[]= { 5,3,6,1 }

आउटपुट

Maximum count of pairs with same sum : 1

स्पष्टीकरण − संख्याओं के युग्मों का योग −

{5,3} Sum:8
{5,6} Sum:11
{5,1} Sum:6
{3,6} Sum:9
{3,1} Sum:4
{6,1} Sum:7
Maximum count of pairs with the same sum is 1.

नीचे दिए गए प्रोग्राम में इस्तेमाल किया गया तरीका इस प्रकार है

  • पूर्णांक सरणी Arr[] का उपयोग पूर्णांकों को संग्रहीत करने के लिए किया जाता है।

  • पूर्णांक 'आकार' सरणी की लंबाई को संग्रहीत करता है।

  • फ़ंक्शन countEqualSum(int arr[], int n) एक सरणी लेता है, इसका आकार इनपुट के रूप में होता है और जोड़े की अधिकतम संख्या देता है जो समान योग उत्पन्न करते हैं।

  • सबसे पहले हम अद्वितीय योगों की आवृत्ति को संग्रहीत करने के लिए 'sum' सरणी लेंगे।

  • योग के प्रत्येक सूचकांक पर, उस तत्व की वृद्धि गणना।

  • सरणी योग का प्रत्येक सूचकांक तत्वों की एक जोड़ी का योग है।

  • सरणी योग के अंदर अधिकतम तत्व की खोज करके अधिकतम ऐसी गणना पाएं और maxC में स्टोर करें।

  • परिणाम के रूप में maxC लौटाएं

उदाहरण

#include <bits/stdc++.h>
using namespace std;
// Function to return the maximum
// count of pairs with equal sum
int countEqualSum(int arr[], int n){
   int sum[20]={0};
   int maxC = 0;
   // Store counts of sum of all pairs
   for (int i = 0; i < n - 1; i++)
      for (int j = i + 1; j < n; j++){
         sum[ arr[i]+arr[j] ]++;
      }
      for(int i=0;i<20;i++)
         if(sum[i]>maxC)
            maxC=sum[i];
   return maxC;
}
int main(){
   int Arr[] = { 1,2,3,4,2 };
   int size = 5;
   cout <<”Maximum count of pairs which generate the same sum”
   << countEqualSum(Arr, size);
   return 0;
}

आउटपुट

Maximum count of pairs which generate the same sum : 3

  1. C++ में अंकों के समान योग वाले दो सरणियों से अलग-अलग युग्मों की गणना करें

    हमें दो सरणियों के साथ दिया गया है, मान लीजिए, arr_1[] और arr_2[] पूर्णांक मान रखते हैं और कार्य समान अंकों के योग वाले अलग-अलग जोड़े की गणना करना है। इसका अर्थ है, एक मान को arr_1[] से चुना जाना चाहिए और दूसरा मान arr_2[] से एक जोड़ी बनाने के लिए चुना जाना चाहिए और दोनों मानों का योग अंक समान होना

  1. उन अलग-अलग युग्मों की संख्या गिनें जिनका योग C++ में दिए गए सरणी में मौजूद है

    हमें किसी भी संबंधित आकार के पूर्णांक मानों की एक सरणी दी गई है, मान लें, arr[] और कार्य किसी दिए गए सरणी में उपलब्ध अलग-अलग जोड़े की संख्या की गणना करना है, जिसका योग भी उसी सरणी में मौजूद है। एक प्रकार की डेटा संरचना को व्यवस्थित करता है जो एक ही प्रकार के तत्वों के एक निश्चित आकार के अनुक्रमिक स

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

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