কম্পিউটার টিউটোরিয়াল

C++-এ একই সম-generating পেয়ারের সর্বোচ্চ কাউন্ট

আমাদের একটি ইন্টিজার অ্যারে দেওয়া আছে। লক্ষ্য হলো অ্যারেতে যেসব পেয়ারের যোগফল একই, তাদের সর্বোচ্চ কাউন্ট বের করা।

ইনপুট

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

আউটপুট

Maximum count of pairs with same sum : 3

ব্যাখ্যা: পেয়ার সম: {1,2},{1,2}=3; {1,3},{2,2}=4; {1,4},{2,3},{3,2}=5 (সর্বোচ্চ ৩টি); {2,4}=6; {3,4}=7।

ইনপুট

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

আউটপুট

Maximum count of pairs with same sum : 1

প্রোগ্রামে ব্যবহৃত পদ্ধতি

  • countEqualSum(int arr[], int n) ফাংশন।
  • sum[20]={0} ফ্রিকোয়েন্সি অ্যারে (সামান্য সম ছোট হলে ২০ যথেষ্ট)।
  • নেস্টেড লুপ i=0 to n-2, j=i+1 to n-1: sum[arr[i]+arr[j]]++।
  • sum অ্যারেতে ম্যাক্সিমাম ভ্যালু খুঁজে maxC-এ রাখা।
  • maxC রিটার্ন।

উদাহরণ কোড

#include <bits/stdc++.h>
using namespace std;

int countEqualSum(int arr[], int n){
    int sum[20] = {0};
    int maxC = 0;
    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[i]+Arr[j]=max in range)

  2. C++-এ দুটি অ্যার থেকে একই অঙ্কযোগফল নিয়ে স্বতন্ত্র জোড়া গণনা

  3. C++-এ অ্যারেতে যেসব স্বতন্ত্র জোড়ার যোগফল অ্যারেতেই আছে তাদের গণনা

  4. সর্বোচ্চ বার ঘটে এমন যোগফল পেয়ারগুলো প্রিন্ট করা C++-তে