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

C++ में दी गई रेंज में सबसे छोटे तत्वों की संख्या गिनना


हमें आकार N की पूर्णांकों की एक सरणी दी गई है। वेरिएबल L और R 1 और N के बीच एक रेंज को परिभाषित करते हैं। लक्ष्य उस रेंज L और R में सबसे छोटे तत्वों की संख्या ढूंढना है जैसे कि L>=1 और R<=N।

  • हम इसे रेंज L और R में स्थित तत्वों को पार करके और सबसे छोटा ढूंढकर करेंगे।

  • फिर से, रेंज L और R के तत्वों को पार करते हैं और काउंट बढ़ाते हैं यदि कोई तत्व चरण 1 में गणना किए गए सबसे छोटे के बराबर है।

आइए उदाहरणों से समझते हैं।

इनपुट - arr[]= { 1,2,3,0,3,2,0,1 }, N=8, L=2, R=5

आउटपुट - रेंज में सबसे छोटे की संख्या: 1

व्याख्या -

रेंज L(1) से R(5) में तत्व arr[1] से arr[4] हैं। { 2,3,0,3 }। सबसे छोटा मान 0 है। 0 की संख्या 1 है।

इनपुट - arr[]= { 1,2,3,0,3,2,0,1 }, N=8, L=3, R=8

आउटपुट - रेंज में सबसे छोटे की संख्या: 2

व्याख्या -

रेंज L(3) से R(8) में तत्व arr[2] से arr[7] हैं। { 3,0,3,2,0,1 }। सबसे छोटा मान 0 है। 0 की संख्या 2 है।

नीचे दिए गए प्रोग्राम में उपयोग किया गया दृष्टिकोण

  • हम यादृच्छिक संख्याओं से आरंभ एक पूर्णांक सरणी arr[] लेते हैं।

  • पूर्णांक L और R arr[] के अंदर रेंज को दर्शाते हैं। काउंट रेंज L और R में सबसे छोटे की गिनती स्टोर करता है।

  • फंक्शन countSmallest(int arr[],int n,int l, int r) एक सरणी, उसकी लंबाई, L और R को इनपुट के रूप में लेता है और रेंज में सबसे छोटे की गिनती लौटाता है।

  • सबसे छोटे को arr[l] के रूप में आरंभ करते हैं, बायां तत्व और सबसे छोटे की प्रारंभिक गिनती 0।

  • अब यदि l<0 और r>=n तो 0 लौटाते हैं, अमान्य रेंज प्रदान की गई।

  • सरणी को इंडेक्स l-1 से r-1 तक पार करना शुरू करते हैं। यदि arr[i]<सबसे छोटा तो सबसे छोटे को अपडेट करते हैं।

  • फिर से, सरणी को l-1 से r-1 तक पार करते हैं, यदि arr[i]==सबसे छोटा, तो काउंट बढ़ाते हैं।

  • काउंट को वांछित परिणाम के रूप में लौटाते हैं।

  • मुख्य फंक्शन के अंदर, काउंट में मौजूद परिणाम प्रदर्शित करते हैं।

उदाहरण

#include <bits/stdc++.h> using namespace std; // संख्या अभाज्य है या नहीं जांचने का फंक्शन int countSmallest(int arr[],int n,int l, int r){ int smallest=arr[l]; int count=0; if(l<0 && r>=n) return 0; for(int i=l-1;i 

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा -

दी गई रेंज में सबसे छोटे की संख्या: 2 दी गई रेंज में सबसे छोटे की संख्या: 2

  1. - C++ में दी गई रेंज में फैक्टोरियल संख्याओं की गिनती करें

    हमें एक रेंज दी गई है जो एक पूर्णांक मान से शुरू होती है जिसे चर द्वारा धारित किया जाता है, मान लीजिए प्रारंभ से चर अंत तक और कार्य दी गई रेंज में उपलब्ध फैक्टोरियल संख्याओं की कुल संख्या को गिनना है। फैक्टोरियल संख्या क्या है एक संख्या का फैक्टोरियल एक संख्या में अंकों को गुणा करके घटते क्रम में

  1. - C++ में नाइस सबएरे की संख्या गिनें

    मान लीजिए हमारे पास इंटीजर्स का एक ऐरे nums और एक इंटीजर k है। एक सबएरे को नाइस सबएरे के रूप में जाना जाता है यदि उसमें k ऑड नंबर हैं। हमें नाइस सब-एरे की संख्या ढूंढनी है। यदि ऐरे [1,1,2,1,1] है, और k = 3, तो आउटपुट 2 होगा, क्योंकि सबएरे [1,1,2,1], और [1,2,1,1] हैं।इसे हल करने के लिए, हम निम्नलिखित

  1. - C++ में ऐरे में सम और विषम एलिमेंट्स की गिनती

    इस ट्यूटोरियल में, हम ऐरे में सम और विषम एलिमेंट्स की संख्या खोजने के लिए एक प्रोग्राम पर चर्चा करेंगे।इसके लिए हमें एक ऐरे प्रदान किया जाएगा। हमारा कार्य दिए गए ऐरे में सम और विषम एलिमेंट्स की संख्या की गणना करना है।उदाहरण#include<iostream> using namespace std; void CountingEvenOdd(int arr[],