কম্পিউটার

C++ এ অন্তর অন্তর সর্বাধিক ঘন ঘন সংখ্যা


ধরুন আমাদের কাছে পূর্ণসংখ্যার ব্যবধানের তালিকার একটি তালিকা রয়েছে যেখানে প্রতিটি উপাদানের ব্যবধান রয়েছে যেমন [শুরু, শেষ]। আমাদের ব্যবধানে সবচেয়ে ঘন ঘন সংঘটিত সংখ্যাটি খুঁজে বের করতে হবে। যদি টাই থাকে, তাহলে সবচেয়ে ছোট সংখ্যাটি ফেরত দিন।

সুতরাং, যদি ইনপুটটি [[2, 5],[4, 6],[7, 10],[8, 10]] এর মত হয়, তাহলে আউটপুট হবে 4

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • একটি মানচিত্র m

    সংজ্ঞায়িত করুন
  • cnt :=0, val :=0

  • প্রতিটি মানের জন্য এটি x −

    • (m[it[0]] 1 দ্বারা বাড়ান)

    • 1

      দ্বারা m[it[1] + 1] হ্রাস করুন
  • শেষ :=0

  • প্রতিটি কীর জন্য এটি m

    • last :=শেষ + এর মান

    • শেষ হলে> cnt, তারপর:

      • cnt :=শেষ

      • val :=এটা

  • রিটার্ন ভ্যাল

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

উদাহরণ

#include <bits/stdc++.h>
using namespace std;
class Solution {
   public:
   int solve(vector<vector<int>>& x) {
      map <int, int> m;
      int cnt = 0;
      int val = 0;
      for(auto& it : x){
         m[it[0]]++;
         m[it[1] + 1]--;
      }
      int last = 0;
      for(auto& it : m){
         last += it.second;
         if(last > cnt){
            cnt = last;
            val = it.first;
         }
      }
      return val;
   }
};
main() {
   Solution ob;
   vector<vector<int>> v = {{2, 5},{4, 6},{7, 10},{8, 10}};
   cout << ob.solve(v);
}

ইনপুট −

{{2, 5},{4, 6},{7, 10},{8, 10}}

আউটপুট

4

  1. C++ এ একটি সংখ্যার সবচেয়ে উল্লেখযোগ্য সেট বিট খুঁজুন

  2. C++ এ পাটিগণিত সংখ্যা

  3. C++ এ আর্গুমেন্টের পরিবর্তনশীল সংখ্যা

  4. C++ এ CHAR_BIT