কম্পিউটার

C++-এ অ্যারের প্রতিটি উপাদানের সারপাসার কাউন্ট খুঁজুন


ধরুন একটা অ্যারে দেওয়া হল। আমাদের সেই অ্যারের প্রতিটি উপাদানের একটি সংখ্যা অতিক্রম করতে হবে। সারপাসার হল বৃহত্তর উপাদান যা বর্তমান উপাদানের অ্যারের ডান দিকে উপস্থিত থাকে। ধরুন A =​​{2, 7, 5, 3, 0, 8, 1}, অতিক্রমকারীরা হল {4, 1, 1, 1, 2, 0, 0}, তাই 2-এর ডান পাশে 4টি সংখ্যা রয়েছে, যা বড়। 4 এর চেয়ে, এবং অন্যদের জন্য একই নিয়ম। সমাধানটি খুবই সহজ, দুটি নেস্টেড লুপ থাকবে, প্রতিটি উপাদানের জন্য, এটি অতিক্রমকারীদের গণনা করবে, তারপর সেগুলিকে অন্য অ্যারেতে সংরক্ষণ করবে৷

উদাহরণ

#include <iostream>
using namespace std;
void gerSurpassers(int arr[], int surpassers[], int n){
   for(int i = 0; i<n; i++){
      int count = 0;
      for(int j = i+1; j<n; j++){
         if(arr[j] > arr[i])
            count++;
      }
      surpassers[i] = count;
   }
}
void displayArray(int arr[], int n){
   for(int i = 0; i<n; i++){
      cout << arr[i] << " ";
   }
   cout << "\n";
}
int main() {
   int arr[] = {2, 7, 5, 3, 0, 8, 1};
   int n = sizeof(arr) / sizeof(arr[0]);
   int surpassers[n];
   cout << "Elements :"; displayArray(arr, n);
   gerSurpassers(arr, surpassers, n);
   cout << "Surpassers:"; displayArray(surpassers, n);
}

আউটপুট

Elements :2 7 5 3 0 8 1
Surpassers:4 1 1 1 2 0 0

  1. C++ এ রোটেটেড সর্টেড অ্যারেতে রোটেশন কাউন্ট খুঁজুন

  2. C++ প্রোগ্রাম 'k' খুঁজে বের করার জন্য যাতে প্রতিটি অ্যারের উপাদানের সাথে এর মডুলাস একই থাকে

  3. একটি অ্যারেতে ইনভার্সন গণনা করার জন্য C++ প্রোগ্রাম

  4. একটি অ্যারের সবচেয়ে বড় উপাদান খুঁজে পেতে C++ প্রোগ্রাম