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

C++ में दी गई शर्तों को पूरा करने वाले वैध युग्मों की गिनती


हमें N तत्वों की एक सरणी arr[] दी गई है। लक्ष्य उन सभी वैध युग्मों (Arr[i], Arr[j]) की गिनती ढूंढना है जो कुछ शर्तों का पालन करते हैं। युग्म Arr[i], Arr[j] अमान्य हैं यदि -

  • Arr[i] == Arr[j]
  • Arr[i] + Arr[j] सम है
  • i + j < 120

नोट - Arr[i], Arr[j] और Arr[j], Arr[i] को एक युग्म के रूप में गिना जाएगा। वैध युग्म में i != j होता है आइए उदाहरणों से समझते हैं।

इनपुट

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

आउटपुट

वैध युग्मों की संख्या: 2

व्याख्या

वैध युग्म हैं -

Arr[0] & Arr[4] → (3,3) यहां Arr[i]==Arr[j] और 3+3 सम है साथ ही i!=j और i+j<120 Arr[1] & Arr[3] → (2,2) यहां Arr[i]==Arr[j] और 2+2 सम है साथ ही i!=j और i+j<120

इनपुट

Arr[]= { 1,2,3,4,5,6 } N=6

आउटपुट

वैध युग्मों की संख्या: 0

व्याख्या

तत्वों का कोई दोहराव नहीं। i!=j वाले (a,a) प्रकार का कोई युग्म संभव नहीं।

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

  • हम यादृच्छिक संख्याओं से आरंभ एक पूर्णांक सरणी Arr[] लेते हैं।
  • एक वेरिएबल n लेते हैं जो Arr[] की लंबाई स्टोर करता है।
  • फंक्शन countPairs(int arr[], int n) एक सरणी, उसकी लंबाई को इनपुट के रूप में लेता है और उन युग्मों को लौटाता है जो वैध हैं और वांछित शर्तों को पूरा करते हैं।
  • प्रत्येक युग्म के तत्व के लिए दो फॉर लूप का उपयोग करके सरणी को पार करते हैं।
  • बाहरी लूप 0<=i
  • arr[i], arr[j] के योग की गणना sum=(arr[i]+arr[j]) के रूप में करते हैं।
  • यह जांचने के लिए कि क्या युग्म वैध है। तुलना करते हैं कि i!=j और sum%2==0 और i+j<120।
  • अब जांचते हैं कि arr[i]==arr[j] है या नहीं। काउंट बढ़ाते हैं।
  • सभी लूप के अंत में काउंट में वैध युग्मों की कुल संख्या होगी।
  • काउंट को परिणाम के रूप में लौटाते हैं।

उदाहरण

#include <bits/stdc++.h> using namespace std; int countPairs(int arr[], int n){ int count=0; for(int i=0;i 

आउटपुट

सरणी में वैध युग्म: a:1b: 1 a:2b: 2 a:4b: 43

  1. ग्रिड में दी गई दिशा में संभावित चालों की गणना करने का C++ प्रोग्राम ग्रिड में दी गई दिशा में संभावित चालों की गणना करने का C++ प्रोग्राम

    समस्या विवरण हमें n x m आकार का ग्रिड और प्रारंभिक बिंदु (x, y) दिया गया है। साथ ही चालों/कदमों के जोड़े दिए गए हैं जैसे (1,1), (2,2) आदि। प्रत्येक जोड़ा x और y अक्ष में कदम की इकाइयों को दर्शाता है। लक्ष्य ग्रिड की सीमाओं [1,n] x [1,m] के भीतर ली जा सकने वाली कुल चालों की संख्या ज्ञात करना है। उदा

  1. - C++ में K बिट्स से भिन्न सरणी के सभी जोड़ों की गणना करें

    इस ट्यूटोरियल में, हम सरणी के उन जोड़ों की संख्या खोजने के लिए एक प्रोग्राम पर चर्चा करेंगे जो K बिट्स से भिन्न हैं।इसके लिए हमें एक सरणी और एक पूर्णांक K प्रदान किया जाएगा। हमारा कार्य उन जोड़ों की संख्या ढूंढना है जो अपने बाइनरी प्रतिनिधित्व में K बिट्स से भिन्न हैं।उदाहरण#include <bits/stdc++.

  1. - C++ में रोटेटेड सॉर्टेड सरणी में रोटेशन काउंट ढूंढना

    मान लीजिए हमारे पास एक सरणी है, जो रोटेटेड सॉर्टेड सरणी है। हमें उन रोटेशन की संख्या ढूंढनी है जो सरणी को सॉर्ट करने के लिए आवश्यक हैं। (हम रोटेशन दाएं से बाएं मानेंगे।)मान लीजिए सरणी ऐसी है: {15, 17, 1, 2, 6, 11}, तो हमें सरणी को दो बार रोटेट करना होगा ताकि यह सॉर्ट हो जाए। अंतिम क्रम {1, 2, 6, 11,