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

C++ में अंतराल में सबसे अधिक बारंबार संख्या


मान लीजिए कि हमारे पास पूर्णांक अंतरालों की सूचियों की एक सूची है जहां प्रत्येक तत्व का अंतराल [प्रारंभ, अंत] है। हमें अंतरालों में सबसे अधिक बार आने वाली संख्या ज्ञात करनी है। यदि संबंध हैं, तो सबसे छोटी संख्या लौटाएं।

इसलिए, यदि इनपुट [[2, 5], [4, 6], [7, 10], [8, 10]] जैसा है, तो आउटपुट 4

होगा।

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • एक नक्शा परिभाषित करें मी

  • सीएनटी:=0, वैल:=0

  • x −

    . में प्रत्येक मान के लिए
    • (m[it[0]] 1 से बढ़ाएं)

    • m[it[1] + 1] को 1 से कम करें

  • अंतिम:=0

  • प्रत्येक कुंजी के लिए इसे m

    . में
    • अंतिम:=इसका अंतिम + मूल्य

    • यदि अंतिम> cnt, तो:

      • सीएनटी:=अंतिम

      • वैल:=यह

  • वापसी वैल

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

उदाहरण

#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++ में अंकगणित संख्या

    अंकगणितीय संख्या एक ऐसी संख्या है जिसमें सभी धनात्मक भाजक का औसत एक पूर्णांक होता है अर्थात संख्या n के लिए यदि भाजक की संख्या भाजक के योग को विभाजित कर सकती है तो n एक अंकगणितीय संख्या है। आइए अवधारणा को बेहतर ढंग से समझने के लिए एक उदाहरण लेते हैं, Input : n = 6 Output : YES Explanation : Divisor

  1. सी ++ में तर्कों की परिवर्तनीय संख्या

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

  1. C++ में CHAR_BIT

    CHAR_BIT चार में बिट्स की संख्या है। इसे C++ भाषा में “limits.h” हेडर फाइल में घोषित किया गया है। यह 8-बिट प्रति बाइट का होता है। यहाँ C++ भाषा में CHAR_BIT का एक उदाहरण दिया गया है, उदाहरण #include <bits/stdc++.h> using namespace std; int main() {    int x = 28;    int a